チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

Koohji

Koohji

セルの結合は、2つ以上のセルを1つの大きなセルに結合することです。セルの分割は、1つのセルを2つ以上の小さなセルに分割することです。Microsoft Word で表を作成または編集する際には、データをよりよく表示するために、表のセルを結合または分割する必要があることがよくあります。この記事では、Spire.Doc for .NET を使用して、C# および VB.NET でプログラムによって Word で表のセルを結合または分割する方法を示します。

Spire.Doc for .NET をインストールします

まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Doc

C# と VB.NET を使用して Word で表のセルを結合する

Microsoft Word では、垂直または水平に隣接する2つ以上のセルを1つの大きなセルに結合できます。Spire.Doc では、Table.ApplyHorizontalMerge()Table.ApplyVerticalMerge() メソッドを使用してセルを結合できます。詳細な手順は次のとおりです。

  • Document クラスのインスタンスを初期化します。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントをロードします。
  • Document.Sections[int] プロパティを使用して、ドキュメント内の特定のセクションをインデックスで取得します。
  • Section.AddTable() メソッドを使用してセクションに表を追加します。
  • Table.ResetCells() メソッドを使用して、表の行数と列数を指定します。
  • Table.ApplyHorizontalMerge() メソッドを使用して、表内の特定のセルを水平方向に結合します。
  • Table.ApplyVerticalMerge() メソッドを使用して、表内の特定のセルを垂直方向に結合します。
  • 表にデータを追加します。
  • 表にスタイルを適用します。
  • Document.SaveToFile() メソッドを使用して結果ドキュメントを保存します。
  • C#
  • VB.NET
using Spire.Doc;
using Spire.Doc.Documents;

namespace MergeTableCells
{
    class Program
    {
        static void Main(string[] args)
        {
            //Documentインスタンスを作成する
            Document document = new Document();
            //Wordドキュメントをロードする
            document.LoadFromFile("sample.docx");

            //最初のセクションを取得する
            Section section = document.Sections[0];

            //セクションに4 x 4の表を追加する
            Table table = section.AddTable();
            table.ResetCells(4, 4);

            //最初の行のセル1、2、3、4を水平に結合する
            table.ApplyHorizontalMerge(0, 0, 3);
            //最初の列のセル3と4を垂直に結合する
            table.ApplyVerticalMerge(0, 2, 3);

            //表にデータを追加する
            for (int row = 0; row < table.Rows.Count; row++)
            {
                for (int col = 0; col < table.Rows[row].Cells.Count; col++)
                {
                    TableCell cell = table[row, col];
                    cell.CellFormat.VerticalAlignment = VerticalAlignment.Middle;
                    Paragraph paragraph = cell.AddParagraph();
                    paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center;
                    paragraph.Text = "テキスト";
                }
            }

            //表にスタイルを適用する
            table.ApplyStyle(DefaultTableStyle.LightGridAccent1);

            //結果ドキュメントを保存する
            document.SaveToFile("MergeCells.docx", FileFormat.Docx2013);
        }
    }
}
Imports Spire.Doc
Imports Spire.Doc.Documents

Namespace MergeTableCells
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            'Documentインスタンスを作成する
            Dim document As Document = New Document()
            'Wordドキュメントをロードする
            document.LoadFromFile("sample.docx")

            '最初のセクションを取得する
            Dim section As Section = document.Sections(0)

            'セクションに4 x 4の表を追加する
            Dim table As Table = section.AddTable()
            table.ResetCells(4, 4)

            '最初の行のセル1、2、3、4を水平に結合する
            table.ApplyHorizontalMerge(0, 0, 3)
            '最初の列のセル3と4を垂直に結合する 
            table.ApplyVerticalMerge(0, 2, 3)

            '表にデータを追加する
            For row As Integer = 0 To table.Rows.Count - 1
                For col As Integer = 0 To table.Rows(row).Cells.Count - 1
                    Dim cell As TableCell = table(row, col)
                    cell.CellFormat.VerticalAlignment = VerticalAlignment.Middle
                    Dim paragraph As Paragraph = cell.AddParagraph()
                    paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center
                    paragraph.Text = "テキスト"
                Next
            Next

            '表にスタイルを適用する
            table.ApplyStyle(DefaultTableStyle.LightGridAccent1)

            '結果ドキュメントを保存する
            document.SaveToFile("MergeCells.docx", FileFormat.Docx2013)
        End Sub
    End Class
End Namespace

C#/VB.NET:Word で表のセルを結合または分割する方法

C# と VB.NET を使用して Word で表のセルを分割する

Spire.Doc for .NET が提供する TableCell.SplitCell() メソッドは、Word で表のセルを2つ以上のセルに分割することをサポートしています。詳細な手順は次のとおりです。

  • Document クラスのインスタンスを初期化します。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントをロードします。
  • Document.Sections[int] プロパティを使用して、ドキュメント内の特定のセクションをインデックスで取得します。
  • Section.Tables[int] プロパティを使用して、セクション内の特定の表をインデックスで取得します。
  • Table.Rows[int].Cells[int] プロパティで分割する表のセルを取得します。
  • TableCell.SplitCell() メソッドを使用して、セルを特定の数の列と行に分割します。
  • Document.SaveToFile() メソッドを使用して結果ドキュメントを保存します。
  • C#
  • VB.NET
using Spire.Doc;

namespace SplitTableCells
{
    class Program
    {
        static void Main(string[] args)
        {
            //Documentインスタンスを作成する
            Document document = new Document();
            //Wordドキュメントをロードする
            document.LoadFromFile("MergeCells.docx");

            //最初のセクションを取得する
            Section section = document.Sections[0];

            //セクションの最初の表を取得する
            Table table = section.Tables[0] as Table;

            //4行の4番目のセルを取得する
            TableCell cell1 = table.Rows[3].Cells[3];
            //セルを2列2行に分割する  
            cell1.SplitCell(2, 2);

            //結果ドキュメントを保存する
            document.SaveToFile("SplitCells.docx", FileFormat.Docx2013);
        }
    }
}
Imports Spire.Doc

Namespace SplitTableCells
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            'Documentインスタンスを作成する
            Dim document As Document = New Document()
            'Wordドキュメントをロードする
            document.LoadFromFile("MergeCells.docx")

            '最初のセクションを取得する
            Dim section As Section = document.Sections(0)

            'セクションの最初の表を取得する
            Dim table As Table = TryCast(section.Tables(0), Table)

            '4行の4番目のセルを取得する
            Dim cell1 As TableCell = table.Rows(3).Cells(3)
            'セルを2列2行に分割する
            cell1.SplitCell(2, 2)

            '結果ドキュメントを保存する
            document.SaveToFile("SplitCells.docx", FileFormat.Docx2013)
        End Sub
    End Class
End Namespace

C#/VB.NET:Word で表のセルを結合または分割する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Word と Excel は全く異なるファイルタイプです。Word ドキュメントは、論文、手紙、またはレポートを書くために使用されます。Excel ドキュメントは、データを表形式で保存したり、グラフを作成したり、データを計算したりするために使用されます。通常、Excel は Word の元のレイアウトを表示するのが難しいため、複雑な Word ドキュメントを Excel スプレッドシートに変換することはお勧めしません。

ただし、Word ドキュメントが主に表から構成されており、Excel で表データを分析したい場合は、Spire.Office for .NET を使用して Word を Excel に変換できます。この方法により、ドキュメントの可読性を維持することもできます。

Spire.Office for .NET をインストールしますb

まず、Spire.Office for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

b
PM> Install-Package Spire.Office

C# と VB.NET で Word を Excel に変換する

このシーンでは、実際に Spire.Office パッケージの2つのライブラリが使用されています。Spire.Doc for .NET は、Word ドキュメントからコンテンツを読み取り、抽出するために使用されます。Spire.XLS for .NET は、Excel ドキュメントを作成し、特定のセルにデータを書き込むために使用されます。このコード例を理解しやすくするために、次の3つのカスタム方法を作成して変換機能を実現しました。

  • ExportTableInExcel() - Word テーブルから指定した Excel セルにデータをエクスポートします。
  • CopyContentInTable() - Word のテーブルのセルから Excel セルにコンテンツをコピーします。
  • CopyTextAndStyle() - Word の段落から Excel セルに書式付きテキストをコピーします。

次の手順では、Spire.Office for .NET を使用して Word ドキュメント全体からワークシートにデータをエクスポートする方法を示します。

  • Document オブジェクトを作成し、Word ドキュメントをロードします。
  • Workbook オブジェクトを作成し、WordToExcel というワークシートを追加します。
  • ドキュメント内のすべてのセクションをループします。そして、セクションの下のすべてのドキュメントオブジェクトをループし、ドキュメントオブジェクトが段落またはテーブルであるかを決定します。
  • ドキュメントオブジェクトが段落の場合は、CopyTextAndStyle() メソッドを使用して、Excel の指定されたセルに段落を書き込みます。
  • ドキュメントオブジェクトがテーブルの場合は、ExportTableInExcel() メソッドを使用してテーブルのデータを Word から Excel セルにエクスポートします。
  • Excel で行の高さと列の幅を自動的に調整し、セルのデータがセルの限界を超えないようにします。
  • Workbook.SaveToFile() メソッドを使用して、ブック を Excel に保存します。
  • C#
  • VB.NET
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using Spire.Xls;
using System;
using System.Drawing;

namespace ConvertWordToExcel
{
    class Program
    {
        static void Main(string[] args)
        {
            //Documentオブジェクトを作成する
            Document doc = new Document();

            //Wordサンプル・ドキュメントをロードする
            doc.LoadFromFile(@"sample.docx");

            //Workbookオブジェクトを作成する
            Workbook wb = new Workbook();

            //デフォルト・ワークシートを削除する
            wb.Worksheets.Clear();

            //「WordToExcel」というワークシートを作成する
            Worksheet worksheet = wb.CreateEmptySheet("WordToExcel");
            int row = 1;
            int column = 1;

            //Wordドキュメントのセクションをループする
            foreach (Section section in doc.Sections)
            {
                //セクション内のドキュメントオブジェクトをループする
                foreach (DocumentObject documentObject in section.Body.ChildObjects)
                {
                    //オブジェクトが段落かどうかを判断する
                    if (documentObject is Paragraph)
                    {
                        CellRange cell = worksheet.Range[row, column];
                        Paragraph paragraph = documentObject as Paragraph;
                        //Wordの段落を特定のセルにコピーする
                        CopyTextAndStyle(cell, paragraph);
                        row++;
                    }

                    //オブジェクトがテーブルかどうかを判断する
                    if (documentObject is Table)
                    {
                        Table table = documentObject as Table;
                        //テーブルのデータをWordからExcelにエクスポートする
                        int currentRow = ExportTableInExcel(worksheet, row, table);
                        row = currentRow;
                    }
                }
            }

            //行の高さと列の幅を自動調整する
            worksheet.AllocatedRange.AutoFitRows();
            worksheet.AllocatedRange.AutoFitColumns();

            //テキストをセルでラップする
            worksheet.AllocatedRange.IsWrapText = true;

            //ワークブックをExcelに保存する
            wb.SaveToFile("WordToExcel.xlsx", ExcelVersion.Version2013);
        }

        //WordのテーブルからExcelセルにデータをエクスポートする
        private static int ExportTableInExcel(Worksheet worksheet, int row, Table table)
        {
            CellRange cell;
            int column;
            foreach (TableRow tbRow in table.Rows)
            {
                column = 1;
                foreach (TableCell tbCell in tbRow.Cells)
                {
                    cell = worksheet.Range[row, column];
                    cell.BorderAround(LineStyleType.Thin, Color.Black);
                    CopyContentInTable(tbCell, cell);
                    column++;
                }
                row++;
            }
            return row;
        }

        //WordテーブルのセルからExcelのセルにコンテンツをコピーする
        private static void CopyContentInTable(TableCell tbCell, CellRange cell)
        {
            Paragraph newPara = new Paragraph(tbCell.Document);
            for (int i = 0; i < tbCell.ChildObjects.Count; i++)
            {
                DocumentObject documentObject = tbCell.ChildObjects[i];
                if (documentObject is Paragraph)
                {
                    Paragraph paragraph = documentObject as Paragraph;
                    foreach (DocumentObject cObj in paragraph.ChildObjects)
                    {
                        newPara.ChildObjects.Add(cObj.Clone());
                    }
                    if (i < tbCell.ChildObjects.Count - 1)
                    {
                        newPara.AppendText("\n");
                    }
                }
            }
            CopyTextAndStyle(cell, newPara);
        }

        //段落のテキストとスタイルをセルにコピーする
        private static void CopyTextAndStyle(CellRange cell, Paragraph paragraph)
        {
            RichText richText = cell.RichText;
            richText.Text = paragraph.Text;
            int startIndex = 0;
            foreach (DocumentObject documentObject in paragraph.ChildObjects)
            {
                if (documentObject is TextRange)
                {
                    TextRange textRange = documentObject as TextRange;
                    string fontName = textRange.CharacterFormat.FontName;
                    bool isBold = textRange.CharacterFormat.Bold;
                    Color textColor = textRange.CharacterFormat.TextColor;
                    float fontSize = textRange.CharacterFormat.FontSize;
                    string textRangeText = textRange.Text;
                    int strLength = textRangeText.Length;
                    ExcelFont font = cell.Worksheet.Workbook.CreateFont();
                    font.Color = textColor;
                    font.IsBold = isBold;
                    font.Size = fontSize;
                    font.FontName = fontName;
                    int endIndex = startIndex + strLength;
                    richText.SetFont(startIndex, endIndex, font);
                    startIndex += strLength;
                }
                if (documentObject is DocPicture)
                {
                    DocPicture picture = documentObject as DocPicture;
                    cell.Worksheet.Pictures.Add(cell.Row, cell.Column, picture.Image);
                    cell.Worksheet.SetRowHeightInPixels(cell.Row, 1, picture.Image.Height);
                }
            }
            switch (paragraph.Format.HorizontalAlignment)
            {
                case HorizontalAlignment.Left:
                    cell.Style.HorizontalAlignment = HorizontalAlignType.Left;
                    break;
                case HorizontalAlignment.Center:
                    cell.Style.HorizontalAlignment = HorizontalAlignType.Center;
                    break;
                case HorizontalAlignment.Right:
                    cell.Style.HorizontalAlignment = HorizontalAlignType.Right;
                    break;
            }
        }
    }
}
Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields
Imports Spire.Xls
Imports System
Imports System.Drawing
 
Namespace ConvertWordToExcel
    Class Program
        Shared  Sub Main(ByVal args() As String)
            'Documentオブジェクトを作成する
            Document doc  =  New Document()
 
            'Wordサンプル・ドキュメントをロードする
            doc.LoadFromFile("sample.docx")
 
            'Workbookオブジェクトを作成する
            Dim wb As Workbook =  New Workbook() 
 
            'デフォルト・ワークシートを削除する
            wb.Worksheets.Clear()
 
            '「WordToExcel」というワークシートを作成する
            Dim worksheet As Worksheet =  wb.CreateEmptySheet("WordToExcel") 
            Dim row As Integer =  1 
            Dim column As Integer =  1 
 
            'Wordドキュメントのセクションをループする
            Dim section As Section
            For Each section In doc.Sections
                'セクション内のドキュメントオブジェクトをループする
                Dim documentObject As DocumentObject
                For Each documentObject In section.Body.ChildObjects
                    'オブジェクトが段落かどうかを判断する
                    If TypeOf documentObject Is Paragraph Then
                        Dim cell As CellRange =  worksheet.Range(row,column) 
                        Dim paragraph As Paragraph =  documentObject as Paragraph 
                        'Wordの段落を特定のセルにコピーする
                        CopyTextAndStyle(cell, paragraph)
                        row = row + 1
                    End If
 
                    'オブジェクトがテーブルかどうかを判断する
                    If TypeOf documentObject Is Table Then
                        Dim table As Table =  documentObject as Table 
                        'テーブルのデータをWordからExcelにエクスポートする
                        Dim currentRow As Integer =  ExportTableInExcel(worksheet,row,table) 
                        row = currentRow
                    End If
                Next
            Next
 
            '行の高さと列の幅を自動調整する
            worksheet.AllocatedRange.AutoFitRows()
            worksheet.AllocatedRange.AutoFitColumns()
 
            'テキストをセルでラップする
            worksheet.AllocatedRange.IsWrapText = True
 
            'ワークブックをExcelに保存する
            wb.SaveToFile("WordToExcel.xlsx", ExcelVersion.Version2013)
        End Sub
 
        'WordのテーブルからExcelセルにデータをエクスポートする
        Private Shared Function ExportTableInExcel(ByVal worksheet As Worksheet, ByVal row As Integer, ByVal table As Table) As Integer
            Dim cell As CellRange
            Dim column As Integer
            Dim tbRow As TableRow
            For Each tbRow In table.Rows
                column = 1
                Dim tbCell As TableCell
                For Each tbCell In tbRow.Cells
                    cell = worksheet.Range(row, column)
                    cell.BorderAround(LineStyleType.Thin, Color.Black)
                    CopyContentInTable(tbCell, cell)
                    column = column + 1
                Next
                row = row + 1
            Next
            Return row
        End Function
 
        'WordテーブルのセルからExcelのセルにコンテンツをコピーする
        Private Shared  Sub CopyContentInTable(ByVal tbCell As TableCell, ByVal cell As CellRange)
            Dim NewPara As Paragraph =  New Paragraph(tbCell.Document) 
            Dim i As Integer
            For  i = 0 To  tbCell.ChildObjects.Count- 1  Step  i + 1
                Dim documentObject As DocumentObject =  tbCell.ChildObjects(i) 
                If TypeOf documentObject Is Paragraph Then
                    Dim paragraph As Paragraph =  documentObject as Paragraph 
                    Dim cObj As DocumentObject
                    For Each cObj In paragraph.ChildObjects
                        NewPara.ChildObjects.Add(cObj.Clone())
                    Next
                    If i < tbCell.ChildObjects.Count - 1 Then
                        NewPara.AppendText("\n")
                    End If
                End If
            Next
            CopyTextAndStyle(cell, NewPara)
        End Sub
 
        '段落のテキストとスタイルをセルにコピーする
        Private Shared  Sub CopyTextAndStyle(ByVal cell As CellRange, ByVal paragraph As Paragraph)
            Dim richText As RichText =  cell.RichText 
            richText.Text = paragraph.Text
            Dim startIndex As Integer =  0 
            Dim documentObject As DocumentObject
            For Each documentObject In paragraph.ChildObjects
                If TypeOf documentObject Is TextRange Then
                    Dim textRange As TextRange =  documentObject as TextRange 
                    Dim fontName As String =  textRange.CharacterFormat.FontName 
                    Dim isBold As Boolean =  textRange.CharacterFormat.Bold 
                    Dim textColor As Color =  textRange.CharacterFormat.TextColor 
                    Dim fontSize As single =  textRange.CharacterFormat.FontSize 
                    Dim textRangeText As String =  textRange.Text 
                    Dim strLength As Integer =  textRangeText.Length 
                    Dim font As ExcelFont =  cell.Worksheet.Workbook.CreateFont() 
                    font.Color = textColor
                    font.IsBold = isBold
                    font.Size = fontSize
                    font.FontName = fontName
                    Dim endIndex As Integer =  startIndex + strLength 
                    richText.SetFont(startIndex, endIndex, font)
                    startIndex += strLength
                End If
                If TypeOf documentObject Is DocPicture Then
                    Dim picture As DocPicture =  documentObject as DocPicture 
                    cell.Worksheet.Pictures.Add(cell.Row, cell.Column, picture.Image)
                    cell.Worksheet.SetRowHeightInPixels(cell.Row, 1, picture.Image.Height)
                End If
            Next
            Select Case paragraph.Format.HorizontalAlignment
                Case HorizontalAlignment.Left
                    cell.Style.HorizontalAlignment = HorizontalAlignType.Left
                    Exit For
                Case HorizontalAlignment.Center
                    cell.Style.HorizontalAlignment = HorizontalAlignType.Center
                    Exit For
                Case HorizontalAlignment.Right
                    cell.Style.HorizontalAlignment = HorizontalAlignType.Right
                    Exit For
            End Select
        End Sub
    End Class
End Namespace

C#/VB.NET:Word を Excel に変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

SVG は、XML ベースのスケーラブルなベクター グラフィック形式であり、グラフィックを記述するためのオープン スタンダードの構成言語です。 SVG は、CSS、DOM、JavaScript などの他の Web 標準とうまく連携するため、現在 Web ページ作成で非常に一般的です。 Excel ワークシートなどのオフィス ドキュメントを Web ページに追加して直接表示するのは非常に困難です。しかし、しかし、これらのドキュメントをSVG画像に変換することで、この難題を解決することができます。この記事では、Spire.XLS for Java を使用して Excel を SVG に変換する方法を紹介します。

Spire.XLS for Java をインストールします

まず、Spire. XLS for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url> https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls</artifactId>
        <version>12.11.8</version>
    </dependency>
</dependencies>

Excel の特定のシートを SVG に変換する

Spire.XLS for Java が提供する Worksheet.toSVGStream() メソッドは、特定のワークシートを SVG に変換することをサポートします。以下に詳細な操作手順を示します。

  • Workbook クラスのオブジェクトを作成します。
  • Workbook.loadFromFile() メソッドを使用して、ディスクから Excel ドキュメントをロードします。
  • Workbook.getWorksheets().get() メソッドを使用して2つ目のシートを取得します。
  • Worksheet.toSVGStream() メソッドを使用して、シートを SVG に変換します。
  • Java
import com.spire.xls.*;
import java.io.FileOutputStream;
import java.io.IOException;

public class ExcelToSVG {
    public static void main(String[] args) throws IOException {

        //Workbook クラスのオブジェクトを作成する
        Workbook workbook = new Workbook();

        //ディスクからExcelドキュメントをロードする
        workbook.loadFromFile("sample.xlsx");

        //2つ目のワークシートを取得する
        Worksheet sheet = workbook.getWorksheets().get(1);

        //ワークシートをSVGに変換する
        FileOutputStream stream = new FileOutputStream("sheet.svg");
        sheet.toSVGStream(stream, sheet.getFirstRow(), sheet.getFirstColumn(), sheet.getLastRow(), sheet.getLastColumn());
        stream.flush();
        stream.close();

    }
}

Java:Excel を SVG に変換する方法

Excel のすべてのシートを SVG に変換する

Spire.XLS for Java が提供する Worksheet.toSVGStream() メソッドは、すべてのワークシートを SVG に変換することをサポートします。以下に詳細な操作手順を示します。

  • Workbook クラスのオブジェクトを作成します。
  • Workbook.loadFromFile() メソッドを使用して、ディスクから Excel ドキュメントをロードします。
  • ドキュメントをループしてシートを取得し、Worksheet.toSVGStream() メソッドを使用してすべてのシートを SVG に変換します。
  • Java
import com.spire.xls.*;
import java.io.FileOutputStream;
import java.io.IOException;

public class ExcelToSVG {
    public static void main(String[] args) throws IOException {

        //Workbook クラスのオブジェクトを作成する
        Workbook workbook = new Workbook();

        //ディスクからExcelドキュメントをロードする
        workbook.loadFromFile("sample.xlsx");

        //ドキュメントをルーペして、ワークシートを取得する
        for (int i = 0; i < workbook.getWorksheets().size(); i++)
        {
            FileOutputStream stream = new FileOutputStream("sheet"+i+".svg");

            //ワークシートをSVGに変換する
            Worksheet sheet = workbook.getWorksheets().get(i);
            sheet.toSVGStream(stream, sheet.getFirstRow(), sheet.getFirstColumn(), sheet.getLastRow(), sheet.getLastColumn());
            stream.flush();
            stream.close();
        }
    }
}

Java:Excel を SVG に変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Spire.Office 7.12のリリースを発表できることを嬉しく思います。このバージョンでは、Spire.PDFはフォームドメインの可視と非表示プロパティの設定、カスタムメタデータの追加、PDFドキュメントのメタデータに新しい名前空間の追加をサポートしました。Spire.XLSは.NET 7.0をサポートしました。Spire.PresentationはPPTスライドを画像として保存した後にコンテンツが失われていた問題が修正されました。さらに、このバージョンでは、多くの既知の問題も修正しました。詳細は以下の内容を読んでください。

このバージョンでは、Spire.Doc,Spire.PDF,Spire.XLS,Spire.Email,Spire.DocViewer, Spire.PDFViewer,Spire.Presentation,Spire.Spreadsheet, Spire.OfficeViewer, Spire.DocViewer, Spire.Barcode, Spire.DataExportの最新バージョンが含まれています。

DLL Versions:
  • Spire.Doc.dll v10.12.0
  • Spire.Pdf.dll v8.12.5
  • Spire.XLS.dll v12.12.1
  • Spire.Presentation.dll v7.11.2
  • Spire.Barcode.dll v6.12.1
  • Spire.Email.dll v5.12.13
  • Spire.Barcode.dll v6.12.1
  • Spire.Spreadsheet.dll v6.12.0
  • Spire.PdfViewer.Asp.dll v7.10.0
  • Spire.PdfViewer.Forms.dll v7.10.0
  • Spire.DocViewer.Forms.dll v7.10.0
  • Spire.OfficeViewer.Forms.dll v7.12.4
  • Spire.DataExport.dll v4.8.0
ここで Spire.Office 7.12をダウンロードする:

このリリースで行われた変更のリストは次のとおりです

Spire.PDF

カテゴリー ID 説明
New feature SPIREPDF-2352 フォームドメインの可視と非表示プロパティの設定をサポートします。
Spire.Pdf.Fields.PdfField field = formWidget.FieldsWidget.List[0] as Spire.Pdf.Fields.PdfField;
//field.AnnotationFlags = Spire.Pdf.Annotations.PdfAnnotationFlags.Default; // Setting visibility
field.AnnotationFlags = Spire.Pdf.Annotations.PdfAnnotationFlags.Hidden; // Setting hidden
New feature SPIREPDF-5495 カスタムメタデータの追加をサポートします。
using(PdfDocument doc = new PdfDocument("1.pdf"))
{
  using(Stream stream = new FileStream('1.xml',FileMode.Open))
 {
    doc.Metadata = PdfXmlMetadata.Parse(stream);
 }
  doc.SaveToFile('result.pdf');
}
New feature SPIREPDF-5506 PDFドキュメントのメタデータに新しい名前空間の追加をサポートします。
SPIREPDF-5506	PDFドキュメントのメタデータに新しい名前空間の追加をサポートします。
PdfXmlMetadata.RegisterNamespace("http://myRandomNamespace", "zf");
using(PdfDocument doc = new PdfDocument("1.pdf"))
{
    doc.Metadata.SetPropertyString("http://myRandomNamespace", "test1","my test");
    doc.SaveToFile('result.pdf');
}
PdfXmlMetadata.ResetNamespaces();
Bug SPIREPDF-5479 プロパティoptions.IsShowHiddenText = falseを設定して隠しテキストを抽出しない問題が機能しなかった問題を修正します。
Bug SPIREPDF-5523 PDFをdocxに変換した後の表の背景色が正しくない問題が修正されました。
Bug SPIREPDF-5597 特殊文字の置換に失敗した問題が修正されました。
Bug SPIREPDF-5615 PDF-Xchangerエディタに選択したボタンが表示されない問題が修正されました。
Bug SPIREPDF-5623 透かしを描画した後にテキストを検索できなかった問題が修正されました。
Bug SPIREPDF-5644 PDFを画像に変換する際にアプリケーションが「Object reference not set to an instance of an object.」をスローする問題が修正されました。

Spire.Presentation

カテゴリー ID 説明
Bug SPIREPPT-2109 PPTスライドを画像として保存した後にコンテンツが失われていた問題が修正されました。

Spire.XLS 12.12.3のリリースを発表できることを嬉しく思います。このリリースは.NET 7.0をサポートしました。同時に、今回の更新では、ExcelからPDFとCSV、HTMLからExcelへの変換機能も強化されました。また、このリリースでは、Save()関数を呼び出して.et形式の文書を保存する場合のデータ保存に失敗するなど、既知の問題が修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
Bug SPIREXLS-783 ExcelをPDFに変換した後の枠線が正しくない問題が修正されました。
Bug SPIREXLS-4288 Save()関数を呼び出して.et形式の文書を保存する場合のデータ保存に失敗する問題を修正しました。
Bug SPIREXLS-4297 ExcelをCSVに変換した後、数式が計算されなかった問題が修正されました。
Bug SPIREXLS-4317 SetActiveCell()関数を呼び出したときに選択されていたセルがアクティブになっていた問題が修正されました。
Bug SPIREXLS-4325 ExcelをPDFに変換した後にA列のデータが失われていた問題が修正されました。
Bug SPIREXLS-4328 CSVファイル内のデータをデータテーブルに変換する際のデータフォーマットが正しくない問題が修正されました。
Bug SPIREXLS-4330 HTMLをExcelに変換した後に結果ファイルの中国語文字化けが修正されました。
Bug SPIREXLS-4332 指定したセル範囲を画像に連続的に変換する際に、アプリケーションが「System.NullReferenceException」をスローする問題が修正されました。
ここで Spire.XLS 12.12.3をダウンロードする

Word 文書におけるヘッダーとは、ページの上部に位置するテキストや画像のコンテンツのことで、フッターはページの下部に位置するものであるということです。 ヘッダーとフッターは、著作権、著者情報、ページ番号など、文書に関する重要な情報を表示するためによく使われます。また、文書をより専門的で美しいものにするために、文書を装飾するためにも使用されます。 ヘッダーとフッターは、文書の各ページまたは最初のページに挿入することができ、文書の奇数ページと偶数ページに異なるヘッダーとフッターを挿入することができます。 この記事では、Spire.Doc for Java を使用してプログラム的に Word 文書にヘッダーとフッターを挿入する方法について説明します。

Spire.Doc for Java をインストールします

まず、Spire. Doc for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url> https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.doc</artifactId>
        <version>10.12.4</version>
    </dependency>
</dependencies>

Word 文書にヘッダーとフッターを挿入する

Word 文書にヘッダーとフッターを挿入するには、まず Section.getHeadersFooters().getHeader()Section.getHeadersFooters().getFooter() メソッドを使用してヘッダーとフッターを取得しておく必要があります。 そして、それらに段落を追加します。 最後に段落に画像、テキスト、ページ番号などを追加します。

以下に、ヘッダーとフッターの挿入方法の詳細を示します。

  • Document クラスのオブジェクトを作成します。
  • Document.loadFromFIle() メソッドを使用して Word ドキュメントを読み込みます。
  • Document.getSections().get() メソッドを使用して、ドキュメントの最初のセクションを取得します。
  • カスタムの insertHeaderAndFooter() メソッドを使用して、セクションにヘッダーとフッターを挿入します。
  • Document.saveToFile() を使ってドキュメントを保存します。
  • Java
import com.spire.doc.*;
import com.spire.doc.documents.*;
import com.spire.doc.fields.TextRange;

public class insertHeaderAndFooter1 {

    public static void main(String[] args) {

        //Documentクラスのオブジェクトを作成する
        Document document = new Document();

        //Wordドキュメントを読み込む
        document.loadFromFile("私たちは織り成す存在である.docx");

        //ドキュメントの最初のセクションを取得する
        Section section = document.getSections().get(0);

        //カスタムのメソッドinsertHeaderAndFooter()を呼び出し、ヘッダーとフッターを挿入する
        insertHeaderAndFooter(section);

        //ドキュメントを保存する
        document.saveToFile("ヘッダーとフッター.docx", FileFormat.Docx);
    }

    private static void insertHeaderAndFooter(Section section) {
        
        //セクションからヘッダーとフッターを取得する
        HeaderFooter header = section.getHeadersFooters().getHeader();
        HeaderFooter footer = section.getHeadersFooters().getFooter();

        //ヘッダーに段落を追加する
        Paragraph headerParagraph = header.addParagraph();

        //ヘッダーの段落にテキストを追加する
        TextRange text = headerParagraph.appendText("哲学\r私たちは織り成す存在である");
        text.getCharacterFormat().setFontName("Yu Gothic UI");
        text.getCharacterFormat().setFontSize(10);
        text.getCharacterFormat().setItalic(true);
        headerParagraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);

        //ヘッダー段落の下部線のスタイルを設定する
        headerParagraph.getFormat().getBorders().getBottom().setBorderType(BorderStyle.Single);
        headerParagraph.getFormat().getBorders().getBottom().setLineWidth(1f);

        //フッターに段落を追加する
        Paragraph footerParagraph = footer.addParagraph();

        //フッター段落にField_PageとField_Num_Pagesフィールドを追加する
        footerParagraph.appendField("ページ番号", FieldType.Field_Page);
        footerParagraph.appendText(" / ");
        footerParagraph.appendField("ページ数", FieldType.Field_Num_Pages);
        footerParagraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);

        //フッター段落の上部線のスタイルを設定する
        footerParagraph.getFormat().getBorders().getTop().setBorderType(BorderStyle.Single);
        footerParagraph.getFormat().getBorders().getTop().setLineWidth(1f);
    }
}

Java:Word 文書にヘッダーとフッターを挿入する方法

Word 文書の最初のページにヘッダーとフッターを挿入する

最初のページにヘッダーとフッターを挿入するだけでよい場合もありますが、これも Spire.Doc for Java を使って行うことができます。 Section.getPageSetup().setDifferentFirstPageHeaderFooter() メソッドを使用して、最初のページのヘッダーとフッターを他のページと異なるものにし、最初のページにヘッダーとフッターを挿入することができます。

最初のページのみにヘッダーとフッターを挿入する詳しい手順は、以下の通りです。

  • Document クラスのオブジェクトを作成します。
  • Document.loadFromFile() メソッドを使用して Word 文書を読み込みます。
  • Document.getSections().get() メソッドを使用して、ドキュメントの最初のセクションを取得します。
  • Document.getSections().get() メソッドを使用して、最初のページのヘッダーとフッターを他のページと異なるように設定します。
  • カスタムの insertHeaderAndFooterFirst() メソッドを使用して、最初のページにヘッダーとフッターを挿入します。
  • Document.saveToFile() メソッドを使用して、ドキュメントを保存します。
  • Java
import com.spire.doc.*;
import com.spire.doc.documents.*;
import com.spire.doc.fields.DocPicture;
import com.spire.doc.fields.TextRange;

import java.awt.*;

public class insertHeaderAndFooter {

    public static void main(String[] args) {

        //Documentクラスのオブジェクトを作成する
        Document document = new Document();

        //Wordドキュメントを読み込む
        document.loadFromFile("私たちは織り成す存在である.docx");

        //ドキュメントの最初のセクションを取得する
        Section section = document.getSections().get(0);

        //ドキュメントの最初のページのヘッダーとフッターを他のページと異なるように設定する
        section.getPageSetup().setDifferentFirstPageHeaderFooter(true);

        //カスタム insertHeaderAndFooterFirst() メソッドを呼び出して、最初のページにヘッダとフッタを挿入する
        insertHeaderAndFooterFirst(section);

        //ドキュメントを保存する
        document.saveToFile("最初のページのヘッダーとフッター.docx", FileFormat.Docx);
    }

    private static void insertHeaderAndFooterFirst(Section section) {

        //ドキュメントの最初のページのヘッダーとフッターを取得する
        HeaderFooter header = section.getHeadersFooters().getFirstPageHeader();
        HeaderFooter footer = section.getHeadersFooters().getFirstPageFooter();

        //ヘッダーに段落を追加する
        Paragraph headerParagraph = header.addParagraph();

        //ヘッダーの段落にテキストを追加する
        TextRange text = headerParagraph.appendText("哲学");
        text.getCharacterFormat().setFontName("Yu Gothic UI");
        text.getCharacterFormat().setFontSize(14);
        text.getCharacterFormat().setTextColor(Color.blue);
        text.getCharacterFormat().setItalic(true);
        headerParagraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);

        //ヘッダー段落に画像を挿入し、その位置を設定する
        DocPicture headerPicture = headerParagraph.appendPicture("ヘッダー.png");
        headerPicture.setHorizontalAlignment(ShapeHorizontalAlignment.Left);
        headerPicture.setVerticalAlignment(ShapeVerticalAlignment.Top);

        //ヘッダー段落の下部線のスタイルを設定する
        headerParagraph.getFormat().getBorders().getBottom().setBorderType(BorderStyle.Single);
        headerParagraph.getFormat().getBorders().getBottom().setLineWidth(1f);

        //画像の文字列の折り返しスタイルを背面に設定する
        headerPicture.setTextWrappingStyle(TextWrappingStyle.Behind);

        //フッターに段落を追加する
        Paragraph footerParagraph = footer.addParagraph();

        //フッター段落にテキストを追加する
        TextRange text1 = footerParagraph.appendText("私たちは織り成す存在である");
        text1.getCharacterFormat().setFontName("Yu Gothic UI");
        text1.getCharacterFormat().setFontSize(14);
        text1.getCharacterFormat().setTextColor(Color.blue);
        text1.getCharacterFormat().setItalic(true);
        footerParagraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);

        //フッター段落の上部線のスタイルを設定する
        footerParagraph.getFormat().getBorders().getTop().setBorderType(BorderStyle.Single);
        footerParagraph.getFormat().getBorders().getTop().setLineWidth(1f);
    }
}

Java:Word 文書にヘッダーとフッターを挿入する方法

Word 文書の奇数ページと偶数ページで異なるヘッダーとフッターを挿入する

また、奇数ページと偶数ページで異なるヘッダーとフッターを挿入する必要がある状況に遭遇することがあります。Spire.Doc for Java では、これらのニーズに対応するために、奇数ページと偶数ページで異なるヘッダーとフッターを作成するメソッド、Section.getPageSetup().setDifferentOddAndEvenPagesHeaderFooter() が用意されています。

奇数ページと偶数ページで異なるヘッダーとフッターを挿入する詳しい手順は、以下のとおりです。

  • Document クラスのオブジェクトを作成します。
  • Document.loadFromFile() メソッドを使用して Word 文書を読み込みます。
  • Document.getSections().get() メソッドを使用して、ドキュメントの最初のセクションを取得します。
  • Section.getPageSetup().setDifferentOddAndEvenPagesHeaderFooter() メソッドを使用して、奇数ページと偶数ページのヘッダーとフッターを異なるものに設定します。
  • カスタムの insertHeaderAndFooterOddEven() メソッドを使用すると、奇数ページと偶数ページに異なるヘッダーとフッターを挿入します。
  • Document.saveToFile() メソッドを使用して、ドキュメントを保存します。
  • Java
import com.spire.doc.*;
import com.spire.doc.documents.*;
import com.spire.doc.fields.TextRange;

import java.awt.*;

public class insertHeaderAndFooter {

    public static void main(String[] args) {

        //Documentクラスのオブジェクトを作成する
        Document document = new Document();

        //Wordドキュメントを読み込む
        document.loadFromFile("私たちは織り成す存在である.docx");

        //ドキュメントの最初のセクションを取得する
        Section section = document.getSections().get(0);

        //奇数ページと偶数ページのヘッダーとフッターを異なるものに設定する
        section.getPageSetup().setDifferentOddAndEvenPagesHeaderFooter(true);

        //カスタム insertHeaderAndFooterOddEven() メソッドを呼び出し、奇数ページと偶数ページに異なるヘッダーとフッターを挿入する
        insertHeaderAndFooterOddEven(section);

        //ドキュメントを保存する
        document.saveToFile("奇数ページと偶数ページのヘッダーとフッター.docx", FileFormat.Docx);
    }

    private static void insertHeaderAndFooterOddEven(Section section) {

        //奇数ページにヘッダーを挿入する
        Paragraph P1 = section.getHeadersFooters().getOddHeader().addParagraph();
        TextRange OH = P1.appendText("奇数ページのヘッダー");
        P1.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
        OH.getCharacterFormat().setFontName("Yu Gothic UI");
        OH.getCharacterFormat().setFontSize(16);
        OH.getCharacterFormat().setTextColor(Color.BLUE);
        P1.getFormat().getBorders().getBottom().setBorderType(BorderStyle.Single);
        P1.getFormat().getBorders().getBottom().setLineWidth(1f);

        //偶数ページにヘッダーを挿入
        Paragraph P2 = section.getHeadersFooters().getEvenHeader().addParagraph();
        TextRange EH = P2.appendText("偶数ページのヘッダー");
        P2.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
        EH.getCharacterFormat().setFontName("Yu Gothic UI");
        EH.getCharacterFormat().setFontSize(16);
        EH.getCharacterFormat().setTextColor(Color.BLUE);
        P2.getFormat().getBorders().getBottom().setBorderType(BorderStyle.Single);
        P2.getFormat().getBorders().getBottom().setLineWidth(1f);

        //奇数ページにフッターを挿入
        Paragraph P3 = section.getHeadersFooters().getOddFooter().addParagraph();
        TextRange OF = P3.appendText("奇数ページのフッター");
        P3.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
        OF.getCharacterFormat().setFontName("Yu Gothic UI");
        OF.getCharacterFormat().setFontSize(16);
        OF.getCharacterFormat().setTextColor(Color.BLUE);
        P3.getFormat().getBorders().getTop().setBorderType(BorderStyle.Single);
        P3.getFormat().getBorders().getTop().setLineWidth(1f);

        //偶数ページにフッターを挿入する
        Paragraph P4 = section.getHeadersFooters().getEvenFooter().addParagraph();
        TextRange EF = P4.appendText("偶数ページのフッター");
        EF.getCharacterFormat().setFontName("Yu Gothic UI");
        EF.getCharacterFormat().setFontSize(16);
        P4.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
        EF.getCharacterFormat().setTextColor(Color.BLUE);
        P4.getFormat().getBorders().getTop().setBorderType(BorderStyle.Single);
        P4.getFormat().getBorders().getTop().setLineWidth(1f);
    }
}

Java:Word 文書にヘッダーとフッターを挿入する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

下付き文字と上付き文字は、どちらも文字列の中で他の文字の後に表示される記号です。上付き文字は通常の文字の基線より上に表示され、下付き文字は文字の基線より下に表示されます。Microsoft Word で上付き文字や下付き文字を挿入する必要がある場合があります。例えば、科学的な数式を含む学術的な文書を作成する場合などです。この記事では、Spire.Doc for Java ライブラリを使用して、Java で Word 文書に上付き文字と下付き文字を挿入する方法について説明します。

Spire.Doc for Java をインストールします

まず、Spire. Doc for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url> https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.doc</artifactId>
        <version>10.12.4</version>
    </dependency>
</dependencies>

Word 文書に上付き文字と下付き文字を挿入する

Spire.Doc for Java では、テキストに上付き文字や下付き文字を適用するための TextRange.getCharacterFormat().setSubSuperScript() メソッドを用意しています。

上付き文字と下付き文字の挿入の詳細な手順は以下の通りです。

  • Document クラスのインスタンスを作成します。
  • Document.loadFromFile() メソッドを使用して Word 文書を読み込みます。
  • Document.getSections().get(sectionIndex) メソッドを使用して、特定のセクションを取得します。
  • Section.addParagraph() メソッドを使用して、セクションに段落を追加します。
  • Paragraph.appendText() メソッドを使用して、段落に通常のテキストを追加します。
  • Paragraph.appendText() メソッドを使用して、上付き文字または下付き文字を適用するテキストを段落に追加します。
  • TextRange.getCharacterFormat().setSubSuperScript() メソッドを使用して、上付き文字または下付き文字の書式を適用します。
  • Document.saveToFile() メソッドを使用して、結果のドキュメントを保存します。
  • Java
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.Section;
import com.spire.doc.documents.BreakType;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.SubSuperScript;
import com.spire.doc.fields.TextRange;

public class insertSuperscriptAndSubscript {
    public static void main(String[] args){

        //Documentクラスのインスタンスを作成する
        Document document = new Document();
        //Word文書の読み込み
        document.loadFromFile("サンプル.docx");

        //1つ目のセクションを取得する
        Section section = document.getSections().get(0);

        //セクションに段落を追加する
        Paragraph paragraph = section.addParagraph();

        //段落に通常のテキストを追加する
        paragraph.appendText("E = mc");
        //上付き文字を適用するテキストを段落に追加する
        TextRange superscriptText = paragraph.appendText("2");
        //テキストに上付き文字書式を適用する
        superscriptText.getCharacterFormat().setSubSuperScript(SubSuperScript.Super_Script);

        //新しい行を開始する
        paragraph.appendBreak(BreakType.Line_Break);

        //段落に通常のテキストを追加する
        paragraph.appendText("H");
        //下付き文字を適用するテキストを段落に追加する
        TextRange subscriptText = paragraph.appendText("2");
        //テキストに下付き文字書式を適用する
        subscriptText.getCharacterFormat().setSubSuperScript(SubSuperScript.Sub_Script);
        //段落に通常のテキストを追加する
        paragraph.appendText("O");

        //段落内のテキストの文字サイズを設定する
        for(Object item : paragraph.getItems())
        {
            if (item instanceof TextRange)
            {
                TextRange textRange = (TextRange)item ;
                textRange.getCharacterFormat().setFontSize(36f);
            }
        }

        //結果文書を保存する
        document.saveToFile("上付き文字と下付き文字.docx", FileFormat.Docx_2013);
    }
}

Java:Word に上付き文字と下付き文字を挿入する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Spire.Presentation 7.12.1 のリリースを発表できることをうれしく思います。このリリースでは、PPTスライドを画像として保存した後にコンテンツが失われていた問題が修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
Bug SPIREPPT-2109 PPTスライドを画像として保存した後にコンテンツが失われていた問題が修正されました。
ここで Spire. Presentation 7.12.1 をダウンロードする

Spire.PDF for Java 8.12.6のリリースを発表できることをうれしく思います。このバージョンでは、ラベルPDFファイルの作成がサポートされました。この更新には、パフォーマンスの最適化も含まれています。例えば、画像の抽出にかかる時間と、ドキュメント画像を圧縮する際のメモリ消費の問題を最適化しました。また、このバージョンでは多くの既知の問題が修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
New feature - ラベルPDFファイルの作成がサポートされました。
//Create a pdf document
PdfDocument doc = new PdfDocument();
//Add page
doc.getPages().add();
//Set tab order
doc.getPages().get(0).setTabOrder(TabOrder.Structure);
//Create PdfTaggedContent
PdfTaggedContent taggedContent = new PdfTaggedContent(doc);
taggedContent.setLanguage("en-US");
taggedContent.setTitle("test");
//Set font
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("Times New Roman",Font.PLAIN,12), true);
PdfSolidBrush brush = new PdfSolidBrush(new PdfRGBColor(Color.black));
//Append elements
PdfStructureElement article = taggedContent.getStructureTreeRoot().appendChildElement(PdfStandardStructTypes.Document);
PdfStructureElement paragraph1 = article.appendChildElement(PdfStandardStructTypes.Paragraph);
PdfStructureElement span1 = paragraph1.appendChildElement(PdfStandardStructTypes.Span);
span1.beginMarkedContent(doc.getPages().get(0));
PdfStringFormat format = new PdfStringFormat(PdfTextAlignment.Justify);
doc.getPages().get(0).getCanvas().drawString("Spire.PDF for .NET is a professional PDF API applied to creating, writing, editing, handling and reading PDF files.",
font, brush, new Rectangle(40, 0, 480, 80), format);
span1.endMarkedContent(doc.getPages().get(0));
PdfStructureElement paragraph2 = article.appendChildElement(PdfStandardStructTypes.Paragraph);
paragraph2.beginMarkedContent(doc.getPages().get(0));
doc.getPages().get(0).getCanvas().drawString("Spire.PDF for .NET can be applied to easily convert Text, Image, SVG, HTML to PDF and convert PDF to Excel with C#/VB.NET in high quality.",
font, brush, new Rectangle(40, 80, 480, 60), format);
paragraph2.endMarkedContent(doc.getPages().get(0));
PdfStructureElement figure1 = article.appendChildElement(PdfStandardStructTypes.Figure);
//Set Alternate text
figure1.setAlt("replacement text1");
figure1.beginMarkedContent(doc.getPages().get(0), null);
PdfImage image = PdfImage.fromFile("E-logo.png");
Dimension2D dimension2D = new Dimension();
dimension2D.setSize( 100,100);
doc.getPages().get(0).getCanvas().drawImage(image, new Point2D.Float(40, 200),dimension2D);
figure1.endMarkedContent(doc.getPages().get(0));
PdfStructureElement figure2 = article.appendChildElement(PdfStandardStructTypes.Figure);
//Set Alternate text
figure2.setAlt( "replacement text2");
figure2.beginMarkedContent(doc.getPages().get(0), null);
doc.getPages().get(0).getCanvas().drawRectangle(PdfPens.getBlack(), new Rectangle(300, 200, 100, 100));
figure2.endMarkedContent(doc.getPages().get(0));

//Save to file
String result = "CreateTaggedFile_result.pdf";
doc.saveToFile(result);
doc.close();
Bug SPIREPDF-4806 抽出画像の時間がかかる問題を最適化しました。
Bug SPIREPDF-4856 ドキュメント画像を圧縮する際のメモリ消費の問題を最適化しました。
Bug SPIREPDF-4860
SPIREPDF-5583
PDFのロード時にアプリケーションが長時間ハングアップしていた問題が修正されました。
Bug SPIREPDF-4955 PDF文書の圧縮に時間がかかる問題を最適化しました。
Bug SPIREPDF-5496 PDFをExcelに変換するためにCustomFontsFoldersを定義する際に、アプリケーションが「TimesNewRomanのフォントが見つかりません」をスローする問題が修正されました。
Bug SPIREPDF-5622 PdfGridを使用して表を描画する際に、枠線の太さが異なる問題が修正されました。
Bug SPIREPDF-5641 異なる場所で描画すると、グリッドセルの内容が正しく表示されない問題を修正しました。
Bug SPIREPDF-5646 PDFをマージすると、アプリケーションが「Unexpected token Unknown before 105」をスローする問題が修正されました。
ここでSpire.PDF for Java 8.12.6をダウンロードする

他人がオンラインで共有する PowerPoint ドキュメントを使用するには、表示する前にパソコンにダウンロードする必要があります。しかし、プレゼンテーションが非常に大きい場合、ダウンロードプロセスは非常に煩雑で時間がかかります。PowerPoint を HTML に変換するのは、オンラインで直接プレゼンテーションを見るための良い解決策です。この記事では、Spire.Presentation for .NET を使用して、C# および VB.NET で PowerPoint を HTML に変換する方法を示します。

Spire.Presentation for.NET をインストールします

まず、Spire.Presentation for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Presentation

PowerPoint プレゼンテーションを C# および VB.NET で HTML に変換する

Spire.Presentation for .NET では、Presentation.SaveToFile(string, FileFormat) メソッドを使用して、PowerPoint プレゼンテーションを PDFXPS、HTML などの他のファイル形式に変換します。次の手順では、Spire.Presentation for .NET を使用して PowerPoint プレゼンテーションを HTML に変換する方法を示します。

  • Presentation クラスのインスタンスを初期化します
  • Presentation.LoadFromFile(string) メソッドを使用して PowerPoint プレゼンテーションをロードします
  • Presentation.SaveToFile(string, FileFormat) メソッドを使用して、PowerPoint プレゼンテーションを HTML 形式で保存します。
  • C#
  • VB.NET
using Spire.Presentation;

namespace ConvertPowerPointToHtml
{
    class Program
    {
        static void Main(string[] args)
        {
            //Presentationクラスのインスタンスを初期化する
            Presentation ppt = new Presentation();
            //PowerPointプレゼンテーションをロードする
            ppt.LoadFromFile(@"sample.pptx");

            //HTMLを出力するファイルパスを指定する
            string result = @"D:\output\PowerPointToHtml.html";

            //PowerPointプレゼンテーションをHTML形式で保存する 
            ppt.SaveToFile(result, FileFormat.Html);
        }
    }
}
Imports Spire.Presentation

Namespace ConvertPowerPointToHtml
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            'Presentationクラスのインスタンスを初期化する
            Dim ppt As Presentation = New Presentation()
            'PowerPointプレゼンテーションをロードする
            ppt.LoadFromFile("sample.pptx")

            'HTMLを出力するファイルパスを指定する
            Dim result = "D:\output\PowerPointToHtml.html "

            'PowerPointプレゼンテーションをHTML形式で保存する
            ppt.SaveToFile(result, FileFormat.Html)
        End Sub
    End Class
End Namespace

C#/VB.NET:PowerPoint を HTML に変換する方法

特定の PowerPoint スライドを C# および VB.NET で HTML に変換する

場合によっては、プレゼンテーション全体ではなく、特定のスライドを HTML に変換する必要があります。Spire.Presentation は、PowerPoint スライドを HTML に変換する ISlide.SaveToFile(string, FileFormat) メソッドを提供しています。詳細な手順は次のとおりです。

  • Presentation クラスのインスタンスを初期化します
  • Presentation.LoadFromFile() メソッドを使用して PowerPoint プレゼンテーションをロードします
  • Presentation.Slides[int]プロパティを使用して、PowerPoint プレゼンテーション内の特定のスライドをインデックスで取得します。
  • ISlide.SaveToFile(string, FileFormat) メソッドを使用して、PowerPoint スライドを HTML 形式で保存します。
  • C#
  • VB.NET
using Spire.Presentation;
using System;

namespace ConvertPowerPointSlideToHtml
{
    class Program
    {
        static void Main(string[] args)
        {
            //Presentationクラスのインスタンスを初期化する
            Presentation presentation = new Presentation();
            //PowerPointプレゼンテーションをロードする
            presentation.LoadFromFile(@"sample.pptx");

            //最初のスライドを取得する
            ISlide slide = presentation.Slides[0];

            //HTMLを出力するファイルパスを指定する 
            String result = @"D:\output\SlideToHtml.html";

            //最初のスライドをHTML形式で保存する
            slide.SaveToFile(result, FileFormat.Html);
        }
    }
}
Imports Spire.Presentation

Namespace ConvertPowerPointSlideToHtml
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            'Presentationクラスのインスタンスを初期化する
            Dim presentation As Presentation = New Presentation()
            ' PowerPointプレゼンテーションをロードする
            presentation.LoadFromFile("sample.pptx")

            '最初のスライドを取得する
            Dim slide As ISlide = presentation.Slides(0)

            'HTMLを出力するファイルパスを指定する
            Dim result = "D:\output\SlideToHtml.html "

            '最初のスライドをHTML形式で保存する
            slide.SaveToFile(result, FileFormat.Html)
        End Sub
    End Class
End Namespace

C#/VB.NET:PowerPoint を HTML に変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。