تغيير الخط فقط في الأحرف اليونيكود المحددة أثناء الحفظ إلى PDF

مثال

الصورة المرفقة تقارن بين ملفي PDF الناتجين من الشفرة النموذجية التالية.

أحدهما تم إنشاؤه دون ضبط خاصية PdfSaveOptions.IsFontSubstitutionCharGranularity والآخر تم إنشاؤه بعد ضبط الخاصية PdfSaveOptions.IsFontSubstitutionCharGranularity على قيمة صحيحة.

كما يمكن رؤيته في الملف الأول بصيغة PDF، تغيرت الخطوط لكامل الجملة من Times New Roman إلى Arial Unicode MS بسبب الواصلة غير المنقطة. في حين أن في الملف الثاني بصيغة PDF، تغيرت خطوط الواصلة غير المنقطة فقط.

ملف PDF الأول
todo:image_alt_text
ملف PDF الثاني
todo:image_alt_text

الكود المثالي

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
// Create workbook object
Workbook workbook = new Workbook();
// Access the first worksheet
Worksheet worksheet = workbook.Worksheets[0];
// Access cells
Cell cell1 = worksheet.Cells["A1"];
Cell cell2 = worksheet.Cells["B1"];
// Set the styles of both cells to Times New Roman
Style style = cell1.GetStyle();
style.Font.Name = "Times New Roman";
cell1.SetStyle(style);
cell2.SetStyle(style);
// Put the values inside the cell
cell1.PutValue("Hello without Non-Breaking Hyphen");
cell2.PutValue("Hello" + Convert.ToChar(8209) + " with Non-Breaking Hyphen");
// Autofit the columns
worksheet.AutoFitColumns();
// Save to Pdf without setting PdfSaveOptions.IsFontSubstitutionCharGranularity
workbook.Save(dataDir + "SampleOutput_out.pdf");
// Save to Pdf after setting PdfSaveOptions.IsFontSubstitutionCharGranularity to true
PdfSaveOptions opts = new PdfSaveOptions();
opts.IsFontSubstitutionCharGranularity = true;
workbook.Save(dataDir + "SampleOutput2_out.pdf", opts);