住所ブロックの段落間のスペースを削除

This article was translated from English: Does it need improvement?
Translated
View the article in English

住所ブロックのような短い行を積み重ねるとき、IronWordのデフォルトの段落間隔は各行の間に目に見える隙間を残します。その隙間を埋めるために、各段落に固定された高さを設定する正確な行間隔ルールを設定して、各行に余分な余白がないようにします。 IronWord 2026.4.1 で確認済み。

解決策

1. 文書を作成し、行をリスト化

新しい WordDocument を開始し、一緒に積み重ねたい行を収集します。

WordDocument doc = new WordDocument();
string[] addressLines =
{
   "Max Mustermann",
   "Musterstraße 42",
   "12345 Musterstadt",
   "Deutschland"
};
WordDocument doc = new WordDocument();
string[] addressLines =
{
   "Max Mustermann",
   "Musterstraße 42",
   "12345 Musterstadt",
   "Deutschland"
};
Dim doc As New WordDocument()
Dim addressLines As String() = {
    "Max Mustermann",
    "Musterstraße 42",
    "12345 Musterstadt",
    "Deutschland"
}
$vbLabelText   $csharpLabel

2. 各段落に正確な行間隔ルールを適用

各行について、Paragraph を構築し、その LineSpacingExact ルールを使用して LineSpacing オブジェクトに設定します。 これにより、各行に固定された高さが与えられ、行間の隙間が取り除かれます。

foreach (string line in addressLines)
{
    Paragraph para = new Paragraph(new TextContent(line));
    para.LineSpacing = new IronSoftware.Abstractions.Word.LineSpacing()
    {
        LineSpacingRule = IronSoftware.Abstractions.Word.LineSpacingRules.Exact,
    };
    doc.AddParagraph(para);
}
foreach (string line in addressLines)
{
    Paragraph para = new Paragraph(new TextContent(line));
    para.LineSpacing = new IronSoftware.Abstractions.Word.LineSpacing()
    {
        LineSpacingRule = IronSoftware.Abstractions.Word.LineSpacingRules.Exact,
    };
    doc.AddParagraph(para);
}
Dim para As Paragraph
For Each line As String In addressLines
    para = New Paragraph(New TextContent(line))
    para.LineSpacing = New IronSoftware.Abstractions.Word.LineSpacing() With {
        .LineSpacingRule = IronSoftware.Abstractions.Word.LineSpacingRules.Exact
    }
    doc.AddParagraph(para)
Next
$vbLabelText   $csharpLabel

行間隔のタイプは IronSoftware.Abstractions.Word 名前空間にあります。 利用可能なタイプとプロパティはバージョンによって異なるため、実行中のリリースに基づいて確認してください。

3. 文書を保存

doc.SaveAs("address3.docx");
doc.SaveAs("address3.docx");
doc.SaveAs("address3.docx")
$vbLabelText   $csharpLabel

段落間で行間が詰まった住所ブロック

明示的な値を Exact ルールよりも好む場合、para.SpacingBetweenLines = 210 もまた詰まった間隔を生成します。

デバッグのヒント

  • ParagraphSpacing を使用しないでください: クラスは 2026.4.1 では利用できませんが、いくつかの例に表示されています。
  • SpacingBeforeSpacingAfter をゼロに設定することを避けてください: 2026.4.1 では、両方を 0 に設定すると段落のテキストが見えなくなりますが、段落はドキュメント内に留まります。 この挙動は調査中です; 正確な行間隔ルールを使用してください。

警告IronWord 2026.4.1でSpacingBeforeSpacingAfter0 に設定すると段落のテキストが隠れます。 上記の Exact 行間スペースのルールを使って、確実に間隔をコントロールします。

テキストの配置に関する詳細は、テキスト追加方法を参照してください。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 48,355 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronWord
サンプルを実行する あなたのデータが Word ドキュメントになるのを見る。