チュートリアル

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

Koohji

Koohji

テキストや画像に比べ、動画は人を惹きつける魅力があります。プレゼンテーションに動画を含めることで、聴衆の注目を集めやすくなり、複雑な概念を効率的かつ分かりやすく説明できるだけでなく、プレゼンテーションをよりダイナミックでクリエイティブに見せることができます。この記事では、Spire.Presentation for Java を使用して、Java で PowerPoint にビデオを挿入、置換、抽出する方法について説明します。

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

まず、Spire.Presentation 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.presentation</artifactId>
        <version>9.2.8</version>
    </dependency>
</dependencies>

PowerPoint プレゼンテーションに動画を挿入する

プレゼンテーションにビデオを挿入することにより、プレゼンテーション中にコンピュータ上でそれを探すことなく、瞬時にあなたの聴衆とビデオを共有することができます。次の手順では、PowerPoint プレゼンテーションに動画を挿入する方法を説明します:

  • Presentation クラスのインスタンスを作成します。
  • Presentation.loadFromFile() メソッドを使用して PowerPoint ドキュメントを読み込みます。
  • Presentation.getSlides().get(int) メソッドを使用して、インデックスによって特定のスライドを取得します。
  • Rectangle2D クラスのインスタンスを作成します。
  • ISlide.getShapes().appendVideoMedia(String,Rectangle2D) メソッドを使用してスライドに動画を追加します。
  • IVideo.getPictureFill().getPicture().setUrl() メソッドを使用して、動画のサムネイル画像を設定します。
  • Presentation.SaveToFile() メソッドを使用して、結果ドキュメントを保存します。
  • Java
import com.spire.presentation.*;
import com.spire.presentation.drawing.FillFormatType;

import java.awt.*;
import java.awt.geom.Rectangle2D;

public class InsertVideoPresentation {
    public static void main(String []args) throws Exception {
        // Presentationのインスタンスを作成する
        Presentation presentation = new Presentation();

        // PowerPoint文書を読み込む
        presentation.loadFromFile("サンプル.pptx");

        // スライドを取得する
        ISlide slide = presentation.getSlides().get(1);

        // 説明テキストを追加する
        Rectangle2D.Double rec_title = new Rectangle2D.Double(50, 280, 160, 50);
        IAutoShape shape_title = slide.getShapes().appendShape(ShapeType.RECTANGLE, rec_title);
        shape_title.getLine().setFillType(FillFormatType.NONE);
        shape_title.getFill().setFillType(FillFormatType.NONE);
        ParagraphEx para_title = new ParagraphEx();
        para_title.setText("オーシャン");
        para_title.setAlignment(TextAlignmentType.CENTER);
        para_title.getTextRanges().get(0).setLatinFont(new TextFont("HarmonyOS Sans SC"));
        para_title.getTextRanges().get(0).setFontHeight(28);
        para_title.getTextRanges().get(0).isBold(TriState.TRUE);
        para_title.getTextRanges().get(0).getFill().setFillType(FillFormatType.SOLID);
        para_title.getTextRanges().get(0).getFill().getSolidColor().setColor(Color.BLACK);
        shape_title.getTextFrame().getParagraphs().append(para_title);

        // 最初のスライドにビデオを追加する
        Rectangle2D.Double videoRect = new Rectangle2D.Double(presentation.getSlideSize().getSize().getWidth() / 2 - 125, 300, 240, 130);
        IVideo video = slide.getShapes().appendVideoMedia("Ocean1.mp4", videoRect);

        // ビデオのサムネイル画像を設定する
        video.getPictureFill().getPicture().setUrl("https://i.postimg.cc/90L2HjGP/2024-03-01-151539.png");

        // 結果の文書を保存する
        presentation.saveToFile("ビデオの挿入.pptx", FileFormat.PPTX_2013);
        presentation.dispose();
    }
}

Java:PowerPoint でビデオを挿入、置換、または抽出する方法

PowerPoint プレゼンテーションで動画を置き換える

あなたは、既存のビデオはよくあなたの文をサポートすることができないと思われる場合は、別の適切なものと置き換えることができます。次の手順では、PowerPoint プレゼンテーションで既存の動画を別の動画に置き換える方法を示します:

  • Presentation クラスのインスタンスを作成します。
  • Presentation.loadFromFile() メソッドを使用して PowerPoint ドキュメントを読み込みます。
  • Presentation.getSlides().get(int) メソッドを使用して、インデックスで特定のスライドを取得します。
  • 動画をバイト配列に読み込みます。
  • Presentation.getVideos().append(byte[]) メソッドを使用して、読み込んだビデオをドキュメントのビデオコレクションに追加します。
  • スライド上のすべての図形をループして、動画の図形を見つけます。
  • IVideo.setEmbeddedVideoData() メソッドを使用して、元の動画を読み込んだ動画に置き換えます。次に、IVideo.getPictureFill().getPicture().setUrl() メソッドを使用して、動画のサムネイル画像を変更します。
  • Presentation.saveToFile() メソッドを使用して、結果ドキュメントを保存します。
  • Java
import com.spire.presentation.*;

import java.io.File;
import java.io.FileInputStream;

public class ReplaceVideo {
    public static void main(String []args) throws Exception {
        // プレゼンテーションのインスタンスを作成します
        Presentation ppt = new Presentation();
        // PowerPoint ドキュメントを読み込みます
        ppt.loadFromFile("ビデオの挿入.pptx");

        // 最初のスライドを取得します
        ISlide iSlide = ppt.getSlides().get(1);

        // ビデオをバイト配列に読み込みます
        File file = new File("Ocean2.mp4");
        FileInputStream fileInputStream = new FileInputStream(file);
        byte[] data = new byte[(int) file.length()];
        fileInputStream.read(data);

        // ドキュメントのビデオコレクションに読み込まれたビデオを追加します
        VideoData videoData = ppt.getVideos().append(data);

        // 最初のスライド上のすべての図形をループします
        for (Object shape : iSlide.getShapes()) {
            // 現在の図形が IVIdeo 型であるかどうかをチェックします
            if (shape instanceof IVideo) {
                IVideo video = (IVideo) shape;
                // 読み込まれたビデオで元のビデオを置き換えます
                video.setEmbeddedVideoData(videoData);
                // ビデオのサムネイル画像を変更します
                video.getPictureFill().getPicture().setUrl("https://i.postimg.cc/vZWYqC4B/2024-03-01-153019.png");
            }
        }
        // 結果のドキュメントを保存します
        ppt.saveToFile("ビデオの置き換え.pptx", FileFormat.PPTX_2013);
    }
}

Java:PowerPoint でビデオを挿入、置換、または抽出する方法

PowerPoint プレゼンテーションから動画を抽出する

あなたは、PowerPoint プレゼンテーション内のビデオが好きで、他の場所でそれらを使用したい場合は、抽出し、ディスクに保存することができます。以下の手順では、PowerPoint プレゼンテーションから動画を抽出する方法を説明します:

  • Presentation クラスのインスタンスを作成します。
  • Presentation.LoadFromFile() メソッドを使用して PowerPoint ドキュメントを読み込みます。
  • ドキュメント内のすべてのスライドをループします。
  • 各スライドのすべての図形をループします。
  • 動画の図形を見つけ、IVideo.getEmbeddedVideoData().saveToFile() メソッドを使用して動画をディスクに保存します。
  • Java
import com.spire.presentation.*;

public class ExtractVideo {
    public static void main(String []args) throws Exception {
        // プレゼンテーションのインスタンスを作成します
        Presentation presentation = new Presentation();

        // PowerPoint ドキュメントを読み込みます
        presentation.loadFromFile("ビデオの置き換え.pptx");

        int i = 0;
        // 出力ファイルパスを指定します
        String videoPath = String.format("output/Videos/Video{0}.mp4", i);

        // ドキュメント内のすべてのスライドをループします
        for (Object slideObj : presentation.getSlides()) {
            ISlide slide = (ISlide) slideObj;
            // 各スライド上のすべての図形をループします
            for (Object shapeObj : slide.getShapes()) {
                IShape shape = (IShape) shapeObj;
                // 図形が IVideo 型であるかどうかをチェックします
                if (shape instanceof IVideo) {
                    // ビデオを指定されたパスに保存します
                    ((IVideo) shape).getEmbeddedVideoData().saveToFile(videoPath);
                    i++;
                }
            }
        }
    }
}

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

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

Spire.Office for Java 9.2.0を発表できることをうれしく思います。このバージョンでは、Spire.XLS for Java は、Kingdraw で描画された OLEオブジェクトを画像として保存するためのサポートを追加し、Spire.Barcode for Java は、QR コードの途中に画像を追加することをサポートします。さらに、多くの既知のバグも修正されました。詳細は以下の内容を読んでください。

ここで Spire.Office for Java 9.2.0をダウンロードする:

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

Spire.XLS for Java

カテゴリー ID 説明
New feature SPIREXLS-5046 Kingdraw で描画された OLE オブジェクトを画像として保存することがサポートしています。
	com.spire.xls.Workbook workbook = new com.spire.xls.Workbook();
	workbook.loadFromFile("data.xlsx");
	Worksheet sheet = workbook.getWorksheets().get(0);
	Object o =  sheet.getCellRange("C2").getFormulaValue();
	if (sheet.hasOleObjects()) {
		for (int i = 0; i < sheet.getOleObjects().size(); i++) {
			IOleObject oleObject = sheet.getOleObjects().get(i);
			OleObjectType oleObjectType = sheet.getOleObjects().get(i).getObjectType();
			byte[] picUrl = null;
			switch (oleObjectType) {
				case Emf:
					picUrl = oleObject.getOleData();;
					break;
			}
			if (picUrl != null) {
				byteArrayToFile(picUrl, "out.png");
				break;
			}
		}
	}
}

public static void byteArrayToFile(byte[] datas, String destPath) {
	File dest = new File(destPath);
	try (InputStream is = new ByteArrayInputStream(datas);
		 OutputStream os = new BufferedOutputStream(new FileOutputStream(dest, false));) {
		byte[] flush = new byte[1024];
		int len = -1;
		while ((len = is.read(flush)) != -1) {
			os.write(flush, 0, len);
		}
		os.flush();
	} catch (IOException e) {
		e.printStackTrace();
	}
}
Bug SPIREXLS-5072
SPIREXLS-5099
Excel を PDF に変換した後にコンテンツが正しくなくなる問題を修正しました。
Bug SPIREXLS-5076 コンテンツをコピーした後に画像が正しくなくなる問題を修正しました。
Bug SPIREXLS-5088 XML を Excel に変換するときに、プログラムが「A workbook must contain at least a visible worksheet」をスローする問題を修正しました。
Bug SPIREXLS-5089 setValue メソッドの Locale 設定を最適化しました。
Bug SPIREXLS-5095 テーブルをコピーするときにプログラムが「NullPointerException」をスローする問題を修正しました。
Bug SPIREXLS-5098 Excel を HTML に変換した後にテキスト コンテンツのスタイルが変更される問題を修正しました。

Spire.Doc for Java

カテゴリー ID 説明
Bug SPIREDOC-9689 Wordを PDF に変換するときに余分な赤い縦線が表示される問題を修正しました。
Bug SPIREDOC-9911 RTF を PDF に変換するときにテキストが失われる問題を修正しました。
Bug SPIREDOC-10009 マルチスレッド環境で同じ Word 文書を PDF 文書に複数回変換すると、プログラムが java.lang.NullPointerException をスローする問題を修正しました。
Bug SPIREDOC-10018 Word を PDF に変換するときにコンテンツが正しくない問題を修正しました。
Bug SPIREDOC-10031 マルチスレッド環境で同じ Word 文書を複数回 PDF に変換すると、PDF ファイルのサイズが不一致になる問題を修正しました。
Bug SPIREDOC-10130 Word を PDF に変換するときに、ヘッダーの数字が正しく表示されない問題を修正しました。
Bug SPIREDOC-10216 更新されたディレクトリの内容が正しくない問題を修正しました。
Bug SPIREDOC-10236 Word を PDF に変換するときにプログラムが java.lang.NullPointerException をスローする問題を修正しました。
Bug SPIREDOC-10238 DocをDocxに変換する際に文字化けが発生する問題を修正しました。
Bug SPIREDOC-10258 マルチスレッド環境でフォルダーに複数のファイルをロードするときにプログラムが複数の例外をスローする問題を修正しました。
Bug SPIREDOC-10274 Word を PDF に変換するときに余分なスラッシュが発生する問題を修正しました。
Bug SPIREDOC-10276 ヘッダーと前のセクションのリンクを解除した後、ヘッダーのコンテンツが繰り返し表示される問題を修正しました。

Spire.PDF for Java

カテゴリー ID 説明
Bug SPIREPDF-6523 最初のページのテンプレートを作成するときにプログラムが「 java.lang.NullPointerException 」をスローする問題を修正しました。
Bug SPIREPDF-6527 PDF ドキュメントの圧縮が機能しない問題を修正しました。
Bug SPIREPDF-6534 ドキュメントを比較するときにプログラムが 「java.lang.NullPointerException 」をスローする問題を修正しました。
Bug SPIREPDF-6535 デジタル署名を追加すると内容が文字化けする問題を修正しました。
Bug SPIREPDF-6542 追加される添付ファイルの MIME タイプが正しくない問題を修正しました。
Bug SPIREPDF-6543 署名の検証で誤った結果が得られる問題を修正しました。

Spire.Presentation for Java

カテゴリー ID 説明
Bug SPIREPPT-2440 PPT ドキュメントをロードするときにプログラムが「NullPointerException」エラーをスローする問題を修正しました。

Spire.Barcode for Java

カテゴリー ID 説明
New feature - ライセンスの適用方法をcom.spire.barcode.license.LicenseProvider.setLicenseKey(key)に変更しました。
New feature SPIREBARCODE-244 QRコードの真ん中に画像を追加することをサポートしています。
BarcodeSettings barCodeSetting = new BarcodeSettings();
BufferedImage image = ImageIO.read(new File("Image/1.png"));
barCodeSetting.setQRCodeLogoImage(image);
Bug SPIREBARCODE-243 垂直バーコードの認識が失敗する問題を修正しました。

Excel の改ページは、印刷を容易にするために大きなワークシートを個々のページに分割する区切り線です。合理的な改ページにより、ユーザーの読書エクスペリエンスも向上します。この記事では、Spire.XLS for Java を使用して、Excel で改ページを追加または削除する方法を示します。

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>14.2.4</version>
    </dependency>
</dependencies>

Java で Excel に改ページを追加する

Spire.XLS for Java を使用すると、ワークシートに水平および垂直の改ページを追加できます。そのための手順は次のとおりです。

  • Workbook クラスのインスタンスを作成します。
  • Workbook.loadFromFile() メソッドを使用して、Excel ファイルを読み込みます。
  • Workbook.getWorksheets().get() メソッドを使用して、インデックスで目的のワークシートを取得します。
  • Worksheet.getRange().get() メソッドを使用して、改ページを追加するセルを指定します。
  • Worksheet.getHPageBreaks().add() および Worksheet.getVPageBreaks().add() メソッドを使用して、セルに水平および垂直の改ページを追加します。
  • Worksheet.setViewMode() メソッドを使用して、シートビューモードを「ViewMode.Preview」に設定します。
  • Workbook.saveToFile() メソッドを使用して、結果ファイルを保存します。
  • Java
import com.spire.xls.*;

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

        //Workbookインスタンスを作成する
        Workbook workbook = new Workbook();

        //Excelファイルを読み込む
        workbook.loadFromFile("Sample.xlsx");

        //最初のワークシートを取得する
        Worksheet sheet = workbook.getWorksheets().get(0);

        //改ページを追加するセルを指定する
        CellRange cell1 = sheet.getRange().get("A10");
        CellRange cell2 = sheet.getRange().get("F1");

        //水平方向の改ページを追加する
        sheet.getHPageBreaks().add(cell1);

        //垂直方向の改ページを追加する
        sheet.getVPageBreaks().add(cell2);

        //改ページを表示するには、ビューモードを「ViewMode.Preview」に設定する
        sheet.setViewMode(ViewMode.Preview);

        //結果ファイルを保存する
        workbook.saveToFile("AddPageBreaks.xlsx", ExcelVersion.Version2013);
    }
}

Java:Excel で改ページを追加または削除する方法

Java で Excel から特定の改ページを削除する

Spire.XLS for Java は、インデックスによる指定された改ページの削除をサポートする Worksheet.getHPageBreaks().removeAt()Worksheet.getHPageBreaks().removeAt() メソッドを提供します。 詳細な手順は次のとおりです。

  • Workbook クラスのインスタンスを作成します。
  • Workbook.loadFromFile() メソッドを使用して、Excel ファイルを読み込みます。
  • Workbook.getWorksheets().get() メソッドを使用して、インデックスで目的のワークシートを取得します。
  • Worksheet.getHPageBreaks().removeAt() または Worksheet.getVPageBreaks().removeAt() メソッドを使用して、インデックスによってワークシートから特定の水平または垂直の改ページを削除します。
  • Workbook.saveToFile() メソッドを使用して、結果ファイルを保存します。
  • Java
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

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

        //Workbookインスタンスを作成する
        Workbook workbook = new Workbook();

        //Excelファイルを読み込む
        workbook.loadFromFile("AddPageBreaks.xlsx");

        //最初のワークシートを取得する
        Worksheet sheet = workbook.getWorksheets().get(0);

        //最初の水平方向の改ページを削除する
        sheet.getHPageBreaks().removeAt(0);

        //最初の垂直方向の改ページを削除する
        //sheet.getVPageBreaks().removeAt(0);

        //結果ファイルを保存する
        workbook.saveToFile("DeleteASpecificPageBreaks.xlsx", ExcelVersion.Version2013);
    }
}

Java:Excel で改ページを追加または削除する方法

Java で Excel からすべての改ページを削除する

すべての改ページを削除する場合は、Worksheet.getHPageBreaks().clear() および Worksheet.getVPageBreaks().clear() メソッド を使用してください。 以下に詳細な手順を示します。

  • Workbook クラスのインスタンスを作成します。
  • Workbook.loadFromFile() メソッドを使用して、Excel ファイルを読み込みます。
  • Workbook.getWorksheets().get() メソッドを使用して、インデックスで目的のワークシートを取得します。
  • Worksheet.getHPageBreaks().clear() および Worksheet.getVPageBreaks().clear() メソッドを使用して、ワークシートからすべての水平および垂直の改ページを削除します。
  • Workbook.saveToFile() メソッドを使用して、結果ファイルを保存します。
  • Java
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

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

        //Workbookインスタンスを作成する
        Workbook workbook = new Workbook();

        //Excelファイルを読み込む
        workbook.loadFromFile("AddPageBreaks.xlsx");

        //最初のワークシートを取得する
        Worksheet sheet = workbook.getWorksheets().get(0);

        //すべての水平方向の改ページを削除する
        sheet.getHPageBreaks().clear();

        //すべての垂直方向の改ページを削除する
        sheet.getVPageBreaks().clear();

        //結果ファイルを保存する
        workbook.saveToFile("DeleteAllPageBreaks.xlsx", ExcelVersion.Version2013);
    }
}

Java:Excel で改ページを追加または削除する方法

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

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

Spire.Presentation for Java 9.2.8を発表できることをうれしく思います。このバージョンでは、PPT ドキュメントのロード時にプログラムが「NullPointerException」エラーをスローする問題が修正されています。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
Bug SPIREPPT-2440 PPT ドキュメントをロードするときにプログラムが「NullPointerException」エラーをスローする問題を修正しました。
ここで Spire. Presentation for Java 9.2.8をダウンロードする

Spire.Doc 12.2.10のリリースをお知らせいたします。このバージョンでは、Word ドキュメント内の GIF 形式のコンテンツの解析がサポートされています。 また、取得した箇条書きが正しくない問題など、既知の問題が修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
New feature SPIREDOC-10052 Word ドキュメント内の GIF 形式のコンテンツの解析がサポートされています。
Bug SPIREDOC-10154 取得した箇条書きが正しくない問題を修正しました。
Bug SPIREDOC-10160 メールマージ後にGIF形式がPNG形式に変換される問題を修正した。
Bug SPIREDOC-10233 Word文書をPDF文書に変換した後、プライベートフォントの埋め込みに失敗する問題を修復しました。
Bug SPIREDOC-10234 WordからPDFへの変換時に文字が正しくなかった問題を修正しました。
Bug SPIREDOC-10235 MACシステムでWord文書をPDF文書に変換した後、フォントの読み込みに失敗する問題を修正しました。
Bug SPIREDOC-10261 Docx文書を読み込むとSystem.NullReferenceExceptionがスローされる問題を修正しました。
Bug SPIREDOC-10295 Docx文書を読み込み、新しい文書として保存した後、表に余分な境界線ができる問題を修復しました。
Bug SPIREDOC-10305 2つのWord文書を比較すると、プログラムがSystem.ArgumentExceptionをスローする問題を修正しました。
Bug SPIREDOC-10308 ページ数の取得時にプログラムがハングする問題を修復しました。
Bug SPIREDOC-10318 2つのWord文書を比較すると、InvalidCastExceptionをスローする問題を修正しました。
ここで Spire.Doc 12.2.10をダウンロードする

場合によっては、PowerPoint ドキュメントを保護する必要があるかもしれません。 たとえば、権限のないユーザーが PowerPoint ドキュメントを表示および編集できないようにしたい場合です。 逆に、PowerPoint ドキュメントの保護を解除する必要がある場合もあります。 たとえば、パスワードで保護された PowerPoint ドキュメントを誰でもアクセスできるようにしたい場合です。この記事では、Spire.Presentation for Java を使用して PowerPoint プレゼンテーションを保護または保護解除する方法を示します。

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

まず、Spire.Presentation 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.presentation</artifactId>
        <version>9.2.2</version>
    </dependency>
</dependencies>

PowerPoint プレゼンテーションをパスワードで保護する

PowerPoint をパスワードで保護すると、正しいパスワードを持つユーザーだけがドキュメントを表示および編集できるようになります。 以下に詳細な手順を示します。

  • Presentation クラスのインスタンスを初期化します。
  • Presentation.loadFromFile() メソッドを使用して PowerPoint ドキュメントをロードします。
  • Presentation.encrypt() メソッドを使用して、ドキュメントをパスワードで暗号化します。
  • Presentation.saveToFile() メソッドを使用して結果ドキュメントを保存します。
  • Java
import com.spire.presentation.FileFormat;
import com.spire.presentation.Presentation;

public class ProtectPPTWithPassword {
    public static void main(String []args) throws Exception {

        //Presentationインスタンスを作成する
        Presentation presentation = new Presentation();

        //PowerPoint ドキュメントをロードする
        presentation.loadFromFile("Sample.pptx");

        //ドキュメントをパスワードで暗号化する
        presentation.encrypt("your password");

        //結果ドキュメントを保存する
        presentation.saveToFile("Encrypted.pptx", FileFormat.PPTX_2013);

    }
}

Java:PowerPoint プレゼンテーションを保護または保護解除する方法

PowerPoint プレゼンテーションを最終版としてマークする

PowerPoint ドキュメントを最終版としてマークすると、ドキュメントが最終バージョンであり、それ以上編集する必要がないことを読者に知らせることができます。以下に詳細な手順を示します。

  • Presentation クラスのインスタンスを初期化します。
  • Presentation.loadFromFile() メソッドを使用して PowerPoint ドキュメントをロードします。
  • Presentation.getDocumentProperty().set() メソッドを使用して、ドキュメントを最終版としてマークします。
  • Presentation.saveToFile() メソッドを使用して結果ドキュメントを保存します。
  • Java
import com.spire.presentation.FileFormat;
import com.spire.presentation.Presentation;

public class MarkPPTAsFinal {
    public static void main(String []args) throws Exception {

        //Presentationインスタンスを作成する
        Presentation ppt = new Presentation();

        //PowerPoint ドキュメントをロードする
        ppt.loadFromFile("Sample.pptx");

        //ドキュメントを最終版としてマークする
        ppt.getDocumentProperty().set("_MarkAsFinal", true);

        //結果ドキュメントを保存する
        ppt.saveToFile("MarkAsFinal.pptx", FileFormat.PPTX_2013);
    }
}

Java:PowerPoint プレゼンテーションを保護または保護解除する方法

PowerPoint プレゼンテーションからパスワード保護を削除する

文書の保護が不要になった場合は、パスワードを削除して保護を解除することもできます。以下に詳細な手順を示します。

  • Presentation クラスのインスタンスを初期化します。
  • Presentation.loadFromFile() メソッドを使用して PowerPoint ドキュメントをロードします。
  • Presentation.removeEncryption() メソッドを使用して、ドキュメントからパスワード保護を削除します。
  • Presentation.saveToFile() メソッドを使用して結果ドキュメントを保存します。
  • Java
import com.spire.presentation.FileFormat;
import com.spire.presentation.Presentation;

public class RemovePasswordProtectionFromPPT {
    public static void main(String []args) throws Exception {

        //Presentationインスタンスを作成する
        Presentation presentation = new Presentation();

        //パスワードで保護された PowerPoint ドキュメントをロードする
        presentation.loadFromFile("Encrypted.pptx", "your password");

        //ドキュメントからパスワード保護を削除する
        presentation.removeEncryption();

        //結果ドキュメントを保存する
        presentation.saveToFile("RemoveProtection.pptx", FileFormat.PPTX_2013);

    }
}

Java:PowerPoint プレゼンテーションを保護または保護解除する方法

PowerPoint プレゼンテーションから最終オプションとしてマークを削除する

「最終版にする」機能は、PowerPoint ドキュメントを読み取り専用にして、それ以上の変更を防止します。 ドキュメントを再度変更したい場合は、ドキュメントから「最終版にする」機能を削除できます。以下に詳細な手順を示します。

  • Presentation クラスのインスタンスを初期化します。
  • Presentation.loadFromFile() メソッドを使用して PowerPoint ドキュメントをロードします。
  • Presentation.getDocumentProperty().set() メソッドを使用して、ドキュメントから「最終版にする」機能を削除します。
  • Presentation.saveToFile() メソッドを使用して結果ドキュメントを保存します。
  • Java
import com.spire.presentation.FileFormat;
import com.spire.presentation.Presentation;

public class RemoveMarkAsFinalFromPPT {
    public static void main(String []args) throws Exception {

        //Presentationインスタンスを作成する
        Presentation ppt = new Presentation();

        //PowerPoint ドキュメントをロードする
        ppt.loadFromFile( "MarkAsFinal.pptx");

        //ドキュメントから「最終版にする」機能を削除する
        ppt.getDocumentProperty().set("_MarkAsFinal", false);

        //結果ドキュメントを保存する
        ppt.saveToFile("RemoveMarkAsFinal.pptx", FileFormat.PPTX_2013);
    }
}

Java:PowerPoint プレゼンテーションを保護または保護解除する方法

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

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

Spire.PDF for Java 10.2.6を発表できることをうれしく思います。このバージョンでは、 署名の検証で誤った結果が得られる問題など、いくつかの既知の問題が修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
Bug SPIREPDF-6523 最初のページのテンプレートを作成するときにプログラムが「 java.lang.NullPointerException 」をスローする問題を修正しました。
Bug SPIREPDF-6527 PDF ドキュメントの圧縮が機能しない問題を修正しました。
Bug SPIREPDF-6534 ドキュメントを比較するときにプログラムが 「java.lang.NullPointerException 」をスローする問題を修正しました。
Bug SPIREPDF-6535 デジタル署名を追加すると内容が文字化けする問題を修正しました。
Bug SPIREPDF-6542 追加される添付ファイルの MIME タイプが正しくない問題を修正しました。
Bug SPIREPDF-6543 署名の検証で誤った結果が得られる問題を修正しました。
ここでSpire.PDF for Java 10.2.6をダウンロードする

Spire.Doc for C++ 12.2.1を発表できることを嬉しく思います。このバージョンでは、固定レイアウトによるページ コンテンツの取得がサポートされています。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
New feature - 固定レイアウトによるページ コンテンツの取得がサポートされています。
//ファイルパスを指定する
wstring input_path = DATAPATH;
wstring inputFile = input_path + L"in.docx";
wstring output_path = OUTPUTPATH;
wstring outputFile = output_path + L"out.txt";

//Document の新しいインスタンスを作成する
intrusive_ptr<Document> document = new Document();

//指定されたファイルからドキュメントを読み込む
document->LoadFromFile(inputFile.c_str(), FileFormat::Docx);
intrusive_ptr<FixedLayoutDocument> layoutDoc = new FixedLayoutDocument(document);
wstring result;

//ロードされたドキュメントを使用してFixedLayoutDocumentオブジェクトを作成する
intrusive_ptr<FixedLayoutLine> line = layoutDoc->GetPages()->GetItem(0)->GetColumns()->GetItem(0)->GetLines()->GetItem(0);
result.append(L"Line: ");
result.append(line->GetText());
result.append(L"\n");

//その行に関連付けられた元の段落を取得する
intrusive_ptr<Paragraph> para = line->GetParagraph();
result.append(L"Paragraph text: ");
result.append(para->GetText());
result.append(L"\n");

//最初のページに表示されるすべてのテキストをプレーン テキスト形式で取得する(ヘッダーとフッターを含む)
wstring pageText = layoutDoc->GetPages()->GetItem(0)->GetText();
result.append(pageText);
result.append(L"\n");

//ドキュメントの各ページをループし、各ページに表示される行数を出力する
for (int i = 0; i < layoutDoc->GetPages()->GetCount(); i++)
{
	intrusive_ptr<FixedLayoutPage> page = layoutDoc->GetPages()->GetItem(i);
	intrusive_ptr<LayoutCollection> lines = page->GetChildEntities(LayoutElementType::Line, true);
	result.append(L"Page ");
	result.append(std::to_wstring(page->GetPageIndex()));
	result.append(L" has ");
	result.append(std::to_wstring(lines->GetCount()));
	result.append(L" lines.");
	result.append(L"\n");
}

//最初の段落のレイアウト エンティティの逆引き参照を実行する
result.append(L"\n");
result.append(L"The lines of the first paragraph:");
result.append(L"\n");
intrusive_ptr<Paragraph> para2 = (Object::Dynamic_cast<Section>(document->GetFirstChild()))->GetBody()->GetParagraphs()->GetItemInParagraphCollection(0);
intrusive_ptr<LayoutCollection> paragraphLines = layoutDoc->GetLayoutEntitiesOfNode(para2);
for (int i = 0; i < paragraphLines->GetCount(); i++)
{
	intrusive_ptr<FixedLayoutLine> paragraphLine = Object::Dynamic_cast<FixedLayoutLine>(paragraphLines->GetItem(i));
	result.append(paragraphLine->GetText());
	result.append(L"\n");
	result.append(paragraphLine->GetRectangle()->ToString());
	result.append(L"\n");
	result.append(L"\n");
}

//抽出したテキストをファイルに書き込む
std::wofstream write(outputFile);
auto LocUtf8 = locale(locale(""), new std::codecvt_utf8<wchar_t>);
write.imbue(LocUtf8);
write << result;
write.close();

//ドキュメントリソースを破棄する
document->Dispose();
ここで Spire.Doc for C++ 12.2.1をダウンロードする

Spire.XLS for Java 14.2.4のリリースをお知らせいたします。このバージョンでは、Kingdraw によって描画された OLE オブジェクトを画像として保存するためのサポートが追加されています。 さらに、Excel を PDF に変換すると内容が正しくなくなる問題など、既知の問題も修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
New feature SPIREXLS-5046 Kingdraw で描画された OLE オブジェクトを画像として保存することがサポートしています。
	com.spire.xls.Workbook workbook = new com.spire.xls.Workbook();
	workbook.loadFromFile("data.xlsx");
	Worksheet sheet = workbook.getWorksheets().get(0);
	Object o =  sheet.getCellRange("C2").getFormulaValue();
	if (sheet.hasOleObjects()) {
		for (int i = 0; i < sheet.getOleObjects().size(); i++) {
			IOleObject oleObject = sheet.getOleObjects().get(i);
			OleObjectType oleObjectType = sheet.getOleObjects().get(i).getObjectType();
			byte[] picUrl = null;
			switch (oleObjectType) {
				case Emf:
					picUrl = oleObject.getOleData();;
					break;
			}
			if (picUrl != null) {
				byteArrayToFile(picUrl, "out.png");
				break;
			}
		}
	}
}

public static void byteArrayToFile(byte[] datas, String destPath) {
	File dest = new File(destPath);
	try (InputStream is = new ByteArrayInputStream(datas);
		 OutputStream os = new BufferedOutputStream(new FileOutputStream(dest, false));) {
		byte[] flush = new byte[1024];
		int len = -1;
		while ((len = is.read(flush)) != -1) {
			os.write(flush, 0, len);
		}
		os.flush();
	} catch (IOException e) {
		e.printStackTrace();
	}
}
Bug SPIREXLS-5072
SPIREXLS-5099
Excel を PDF に変換した後にコンテンツが正しくなくなる問題を修正しました。
Bug SPIREXLS-5076 コンテンツをコピーした後に画像が正しくなくなる問題を修正しました。
Bug SPIREXLS-5088 XML を Excel に変換するときに、プログラムが「A workbook must contain at least a visible worksheet」をスローする問題を修正しました。
Bug SPIREXLS-5089 setValue メソッドの Locale 設定を最適化しました。
Bug SPIREXLS-5095 テーブルをコピーするときにプログラムが「NullPointerException」をスローする問題を修正しました。
Bug SPIREXLS-5098 Excel を HTML に変換した後にテキスト コンテンツのスタイルが変更される問題を修正しました。
ここで Spire.XLS for Java 14.2.4をダウンロードする

CSV(Comma-Separated Values)ファイルは、基本的にはテキストファイルであり、テーブルデータをプレーンな形式で保存します。CSV ファイルでは、データをコンマで区切り、改行で行またはレコードを区切ります。これらは、メモ帳などのテキストファイルを処理できるほとんどのプログラムで簡単に編集することができます。CSV ファイルを PDF に変換することで、閲覧者が編集することを防ぐことができます。この記事では、Spire.XLS for Java を使用して Java で CSV を PDF に変換する方法について説明します。

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.7.4</version>
    </dependency>
</dependencies>

Java で CSV を PDF に変換

以下は CSV ファイルを PDF に変換する手順です:

  • Workbook クラスのインスタンスを作成します。
  • Workbook.loadFromFile(filePath,separator) メソッドを使用して CSV ファイルをロードします。
  • Workbook.getConverterSetting().setSheetFitToPage(true) メソッドを使用して、PDF の 1 ページにレンダリングするワークシートを設定します。
  • Workbook.getWorksheets().get(0) メソッドを使用して、Workbook 内の最初のワークシートを取得します。
  • ワークシート内の列をループし、Worksheet.autoFitColumn() メソッドを使用して各列の幅を自動フィットします。
  • Worksheet.saveToPdf() メソッドを使用して、ワークシートを PDF に保存します。
  • Java
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

public class ConvertCsvToPdf {
    public static void main(String []args) {
        // Workbookクラスのオブジェクトを作成します
        Workbook wb = new Workbook();

        // CSVファイルをロードします
        wb.loadFromFile("サンプル.csv", ",");

        // SheetFitToPageプロパティをtrueに設定して、ワークシートが1つのPDFページに変換されるようにします
        wb.getConverterSetting().setSheetFitToPage(true);

        // 最初のワークシートを取得します
        Worksheet sheet = wb.getWorksheets().get(0);

        // ワークシート内の列をループします
        for (int i = 1; i < sheet.getColumns().length; i++)
        {
            // 列の幅を自動調整します
            sheet.autoFitColumn(i);
        }

        // ワークシートをPDF形式で保存します
        sheet.saveToPdf("output/CSVからPDFへの変換.pdf");
    }
}

Java:CSV を PDF に変換する方法

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

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