gpt4 book ai didi

c# - itextsharp c# 中的 RTL 对齐

转载 作者:行者123 更新时间:2023-11-30 20:46:26 25 4
gpt4 key购买 nike

我想在我的 pdf 中添加阿拉伯语文本。我需要进行 RTL 对齐。 Hebrew text in PDF给出了如何使用 PdfpTable 的答案。

并使用

table.RunDirection = PdfWriter.RUN_DIRECTION_RTL;

我可以。但是,当我根本没有创建 PdfPTable 时,还有其他方法吗?

最佳答案

您可以使用ColumnText并将其RunDirection设置为RUN_DIRECTION_RTL:

using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;

namespace iTextSharpTests
{
class Program
{
static void Main(string[] args)
{
using (var pdfDoc = new Document(PageSize.A4))
{
var pdfWriter = PdfWriter.GetInstance(pdfDoc, new FileStream("Test.pdf", FileMode.Create));
pdfDoc.Open();

var fontPath = Environment.GetEnvironmentVariable("SystemRoot") + "\\fonts\\tahoma.ttf";
var baseFont = BaseFont.CreateFont(fontPath, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
var tahomaFont = new Font(baseFont, 10, Font.NORMAL, BaseColor.BLACK);

ColumnText ct = new ColumnText(pdfWriter.DirectContent);
ct.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
ct.SetSimpleColumn(100, 100, 500, 800, 24, Element.ALIGN_RIGHT);

var chunk = new Chunk("تست", tahomaFont);

ct.AddElement(chunk);
ct.Go();
}
}
}
}

关于c# - itextsharp c# 中的 RTL 对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26979126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com