ホームページ > バックエンド開発 > C++ > C# で PDF を結合するときに余分な空白を削除する方法

C# で PDF を結合するときに余分な空白を削除する方法

Patricia Arquette
リリース: 2024-12-29 03:55:10
オリジナル
349 人が閲覧しました

How to Eliminate Excess Whitespace When Merging PDFs in C#?

結合時に空白を削除する方法

問題:
複数の PDF ドキュメントを結合すると、次の場合でも各ページが完全なページとみなされます。コンテンツの量が少ないため、結合された画像に垂直方向の空白が生じます。 document.

解決策:

PdfVeryDenseMergeTool クラスの使用 (C#):

public class PdfVeryDenseMergeTool
{
    // ... (rest of the class)
    protected Rectangle PageSize;
    protected float TopMargin;
    protected float BottomMargin;
    protected float Gap;
    protected Document Document;
    protected PdfWriter Writer;
    protected float YPosition = 0;

    public PdfVeryDenseMergeTool(Rectangle size, float top, float bottom, float gap)
    {
        // ... (rest of the constructor)
    }

    public void Merge(MemoryStream outputStream, List<PdfReader> inputs)
    {
        // ... (rest of the method)
    }
}
ログイン後にコピー

PageVerticalAnalyzer クラスの使用 (C#):

public class PageVerticalAnalyzer : IRenderListener
{
    // ... (rest of the class)
    public List<float> VerticalFlips = new List<float>();

    // ... (rest of the methods)
}
ログイン後にコピー

収集するコードファイルとツールの実行 (C#):

public void TestMergeDocuments()
{
    PdfVeryDenseMergeTool tool = new PdfVeryDenseMergeTool(iTextSharp.text.PageSize.A4, 18, 18, 10);
    List<byte[]> Files = new List<byte[]>();

    // ... (code to load files)

    using (MemoryStream ms = new MemoryStream())
    {
        List<PdfReader> files = new List<PdfReader>();
        foreach (byte[] ba in Files)
        {
            files.Add(new PdfReader(ba));
        }
        tool.Merge(ms, files);
        // ... (save the file using ms.GetBuffer())
    }
}
ログイン後にコピー

以上がC# で PDF を結合するときに余分な空白を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート