レビュー、レッドライニング、コンテンツ抽出、または下流のドキュメントワークフローへの取り込みのために、編集可能なWordドキュメントに変換する必要があるHTMLファイルや保存済みウェブページのフォルダがある場合、各ファイルをブラウザで開いてWordにコピー&ペーストする方法は2、3ファイルを超えるとスケールしません。Total HTML Converter Xは、GUIなし、Microsoft Wordのインストールも不要で、コマンドラインからHTMLファイルをバッチでDOCに変換します。Windowsサーバーにインストールし、スクリプトやActiveX経由で呼び出して、無人で実行できます。
*.html)を指定するだけで、一致するすべてのファイルを一回の実行で処理
(30日間、メール登録不要)
(サーバーライセンス、永続版)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
HTMLはウェブブラウザ向けに設計されたマークアップ言語です。ソースは外部のスタイルシート、スクリプト、画像を参照するプレーンテキストファイルです。HTMLを編集するということはタグを編集するということ。HTMLファイルを技術者ではないレビュアーと共有しても、有用なフィードバックが得られることはほとんどありません。彼らはハイライト、コメント、変更履歴の記録を望んでいるのであって、ソースコードで作業したいわけではありません。
DOCは、ビジネスのドキュメントワークフローのあらゆる場所で使われているMicrosoft Word形式です。レビュアーは編集、コメント、変更の承認/却下、スタイルの適用ができます。DOCファイルはレッドライニング、バージョン管理、電子署名プラットフォーム、ドキュメント管理システムと統合できます。HTMLコンテンツがそのワークフローに入る必要があるとき、まずDOCに変換しなければなりません。
| HTML | DOC | |
|---|---|---|
| 編集 | ソースコードレベル(タグ) | Word、Pages、LibreOfficeでWYSIWYG |
| レビュー | ネイティブのレビュー機能なし | 変更履歴、コメント、レッドライニング |
| レイアウト | ブラウザに依存 | ビューア間で一貫 |
| 対象者 | ウェブ開発者 | ワードプロセッサを使うすべての人 |
| ワークフロー | ウェブ表示 | ビジネスドキュメント処理 |
上のリンクからインストーラーをダウンロードし、Windowsサーバーまたはワークステーションで実行します。セットアップは1分以内で完了します。ブラウザやMicrosoft Wordのインストールは不要です。コンバーターはHTMLタグ、CSS 1/2スタイル、埋め込み画像を処理する独自のレンダリングエンジンを使用します。
cmd.exeまたはPowerShellを開きます。コンバーターの実行ファイルはHTMLConverter.exeで、インストールフォルダ(通常はC:\Program Files\CoolUtils\TotalHTMLConverterX\)にあります。システムPATHに追加するか、コマンドでフルパスを使用してください。
最もシンプルなコマンドは、フォルダ内のすべてのHTMLファイルをDOCに変換します:
HTMLConverter.exe C:\Pages\*.html C:\Output\ -c DOC
このコマンドはC:\Pages\内のすべての.htmlファイルを処理し、変換後のDOCをC:\Output\に保存します。各HTMLファイルから同じベース名のDOCが1つ生成されます。
追加のフラグでDOC出力を制御します:
HTMLConverter.exe C:\Pages\*.html C:\Output\ -c DOC -PageSize A4 -Orientation portrait -log C:\Logs\html2doc.log
-PageSize A4 — 用紙サイズを設定(A4、Letter、Legal、A3など)-Orientation portrait — 縦向きまたは横向き-MarginTop 20、-MarginLeft 25 — ページ余白をミリメートル単位で設定-log C:\Logs\html2doc.log — 検証用の変換ログを出力コマンドを.batファイルに保存し、Windowsタスクスケジューラでスケジュールします:
@echo off "C:\Program Files\CoolUtils\TotalHTMLConverterX\HTMLConverter.exe" C:\Incoming\*.html C:\Archive\DOC\ -c DOC -PageSize A4 -log C:\Logs\html2doc.log
これにより、毎晩(または設定した任意の間隔で)変換が実行され、結果を検証できるログファイルが出力されます。
Total HTML Converter Xには完全なActiveXインターフェースが含まれています。.NET、VBScript、PHP、Python、Ruby、ASPなど、あらゆるCOM互換環境からコンバーターを呼び出せます。これにより、コマンドラインプロセスを外部起動することなく、独自のウェブアプリケーション、イントラネットポータル、またはドキュメントワークフローにHTML-to-DOC変換を組み込めます。
例(C#/.NET):
HTMLConverterX Cnv = new HTMLConverterX();
Cnv.Convert("C:\\Pages\\report.html", "C:\\Output\\report.doc", "-c DOC -log c:\\Logs\\html.log");
例(PHP):
$c = new COM("HTMLConverter.HTMLConverterX");
$c->convert("C:\\Pages\\report.html", "C:\\Output\\report.doc", "-c DOC -log c:\\Logs\\html.log");
同じ呼び出しがASP.NET、VBScript、Python、Ruby、Perl、JavaScript(Windows Script Host)でも動作します。ウェブアプリケーションでアップロードされたHTMLファイルを受け取り、リアルタイムで編集可能なDOCをユーザーに返すことができます。
| 機能 | オンラインコンバーター | Total HTML Converter X |
|---|---|---|
| バッチ処理 | 一度に1ファイルのみ | バッチあたりファイル数無制限 |
| ファイルのプライバシー | サードパーティサーバーにアップロード | ファイルは自分のマシンから外に出ない |
| CSSレンダリング | 基本的で不安定 | CSS 1/2を完全サポート |
| 出力の忠実度 | 書式が失われることが多い | レイアウト、画像、テーブルを保持 |
| 自動化 | 手動のみ | コマンドライン、.bat、タスクスケジューラ、ActiveX |
| サーバー展開 | 不可 | サーバー向け設計、GUI不要 |
| Wordのインストール必須 | 該当なし | 不要 |
| インターネット必要 | はい | いいえ |
コンバーターは有効なDOCファイルを直接書き出します。サーバーにMicrosoft Office、LibreOffice、その他のワードプロセッサをインストールする必要はありません。これによりライセンスコストを回避し、無人シナリオでのWord自動化のよく知られた不安定さを回避できます。
Total HTML Converter Xは無人運用向けに設計されています。GUIウィンドウ、ダイアログボックス、確認プロンプトはありません。コマンドラインから、またはサービスの一部としてサイレントに実行されます。本番サーバーに必要なものそのものです。
DOC出力には本物のテキスト、本物の書式、本物の画像が含まれます。レビュアーはコンテンツを編集し、スタイルを適用し、変更を承認または却下し、スペルチェックを実行できます。Wordに貼り付けたスクリーンショットではなく、本物のドキュメントです。
同じコマンドラインツールでHTMLをPDF、XLS、TIFF、JPEG、RTF、TXTなどに変換できます。1回のインストールですべてのHTML変換ニーズに対応します。-c DOCを-c PDFに変更するだけで、同じバッチ機能と自動化機能でPDF出力が得られます。
(30日間、メールやクレジットカード不要)
(サーバーライセンス、永続版)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
"当社のナレッジベースはHTMLで管理していますが、法務チームはすべて変更履歴付きのWordでレビューしています。Total HTML Converter Xはイントラネットサーバー上で夜間バッチとして実行され、法務キュー向けのDOCファイルを自動的に生成します。出力はソースHTMLのテーブルや画像をそのまま保持しており、これこそコピー&ペーストのワークフローから切り替えた理由でした。"
Helena Brandt Documentation Lead, Mittelstand Engineering
"4,000ページ規模の顧客ポータルをHTMLのCMSからドキュメント管理システムへ移行しました。DOCへの一括変換は、.batファイル1つと長い週末で完了。Wordライセンスもヘッドレスブラウザも不要、Office自動化の問題もありません。出力品質は安定しており、ログファイルが少数の不正なソースページを検出してくれました。"
Mark Eriksen DevOps Engineer
"PHPのレポートモジュールにActiveXインターフェースを統合し、HTMLレポートのDOC版をオンデマンドで生成しています。COM呼び出しはシンプルで、コンバーターはリアルタイムレスポンスに十分な速さです。CSSレンダリングは投げかけるすべてに対応してくれます。ドキュメントは場所によってはもう少し詳しくしてほしいですが、サポートは1日以内に質問に答えてくれました。"
Yusuf Demir Backend Developer, FinTech SaaS
HTMLConverter.exe C:\Pages\*.html C:\Output\ -c DOC です。ソースフォルダ内のすべてのHTMLファイルをDOCに変換します。-PageSize A4、-Orientation portrait、-logなどのフラグを追加して出力を制御できます。HTMLConverter.HTMLConverterX)として登録されます。.NET、PHP、Python、VBScript、ASP、Ruby、Perl、その他のCOM互換環境から呼び出せます。
string src = @"C:\test\Source.html";
string dest = @"C:\test\Dest.pdf";
var cnv = new HTMLConverterX();
cnv.Convert(src, dest, "-cPDF -log c:\\test\\HTML.log");
if (!string.IsNullOrEmpty(cnv.ErrorMessage))
throw new Exception(cnv.ErrorMessage);
public static class Function1
{
[FunctionName("Function1")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
StringBuilder sbLogs = new StringBuilder();
sbLogs.AppendLine("started...");
try
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
var assemblyDirectoryPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
assemblyDirectoryPath = assemblyDirectoryPath.Substring(0, assemblyDirectoryPath.Length - 4);
var executablePath = $@"{assemblyDirectoryPath}\Converter\HTMLConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.html";
var outPath = Path.GetTempFileName() + ".pdf";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
if (File.Exists(executablePath) && File.Exists(srcPath))
{
sbLogs.AppendLine("files exists...");
}
else
sbLogs.AppendLine("EXE & source files NOT exists...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"\"{srcPath}\" \"{outPath}\" -cPDF";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
sbLogs.AppendLine("Conversion complete.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("HTMLConverter.HTMLConverterX")
C.Convert "c:\source.html", "c:\dest.jpg", "-cJPG -log c:\html.log"
C.Convert "https://www.coolutils.com/", "c:\URL Page.pdf", "-cPDF -log c:\html.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("HTMLConverter.HTMLConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.pdf"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.html", "C:\www\ASP", "-cpdf -log c:\html.log")
set C = nothing
$src="C:\\test\\test.html";
$dest="C:\\test\\test.pdf";
if (file_exists($dest)) unlink($dest);
$c= new COM("HTMLConverter.HTMLConverterX");
$c->convert($src,$dest, "-cPDF -log c:\\HTML.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('HTMLConverter.HTMLConverterX')
src = "C:\\test\\test.html"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\HTML.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("HTMLConverter.HTMLConverterX")
src = "C:\\test\\test.html"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\HTML.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('HTMLConverter.HTMLConverterX');
c.Convert('c:\test\source.html', 'c:\test\dest.pdf', '-cPDF -log c:\test\HTML.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("HTMLConverter.HTMLConverterX");
c.Convert("C:\\test\\source.html", "C:\\test\\dest.pdf", "-cPDF");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.html"; my $dest = "C:\\test\\test.pdf"; my $c = CreateObject Win32::OLE 'HTMLConverter.HTMLConverterX'; $c->convert($src, $dest, "-cPDF -log c:\\test\\HTML.log"); print $c->ErrorMessage if -e $dest;
無料トライアルをダウンロードして、ファイルを数分で変換。
クレジットカードもメールアドレスも不要。