Sadece belirli Unicode karakterleri değiştirerek ve PDF ye kaydederken fontu değiştirme

Contents
[ ]

Örnek

Aşağıdaki ekran görüntüsü, aşağıdaki örnek kodu ile oluşturulan iki PDF’yi karşılaştırır.

Biri PdfSaveOptions.IsFontSubstitutionCharGranularity özelliği ayarlanmadan oluşturulmuş, diğeri ise bu özellik true yapıldıktan sonra oluşturulmuştur.

İlk PDF’de tüm cümlenin fontu Times New Roman’dan Arial Unicode MS’ye Non-Breaking Hyphen nedeniyle değişti. İkinci PDF’de ise yalnızca Non-Breaking Hyphen’in fontu değişti.

İlk PDF Dosyası
todo:image_alt_text
İkinci PDF Dosyası
todo:image_alt_text

Örnek Kod

#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;

int main()
{
    Aspose::Cells::Startup();

    // Source directory path
    U16String srcDir(u"..\\Data\\01_SourceDirectory\\");

    // Output directory path
    U16String outDir(u"..\\Data\\02_OutputDirectory\\");

    // Create workbook object
    Workbook workbook;

    // Access the first worksheet
    Worksheet worksheet = workbook.GetWorksheets().Get(0);

    // Access cells
    Cell cell1 = worksheet.GetCells().Get(u"A1");
    Cell cell2 = worksheet.GetCells().Get(u"B1");

    // Set the styles of both cells to Times New Roman
    Style style = cell1.GetStyle();
    style.GetFont().SetName(u"Times New Roman");
    cell1.SetStyle(style);
    cell2.SetStyle(style);

    // Put the values inside the cell
    cell1.PutValue(u"Hello without Non-Breaking Hyphen");
    cell2.PutValue(u"Hello\u2011 with Non-Breaking Hyphen");

    // Autofit the columns
    worksheet.AutoFitColumns();

    // Save to Pdf without setting PdfSaveOptions.IsFontSubstitutionCharGranularity
    workbook.Save(outDir + u"SampleOutput_out.pdf");

    // Save to Pdf after setting PdfSaveOptions.IsFontSubstitutionCharGranularity to true
    PdfSaveOptions opts;
    opts.SetIsFontSubstitutionCharGranularity(true);
    workbook.Save(outDir + u"SampleOutput2_out.pdf", opts);

    std::cout << "Files saved successfully!" << std::endl;

    Aspose::Cells::Cleanup();
}