利用方法
簡単な利用方法
本サービスは、WEBページにフォームを設置したり、あるいはJavaScriptからPOSTしたりするだけで簡単に利用することが出来ます。 詳しくは、HTML / JavaScript での利用方法を御覧ください。
各プログラミング言語からの利用
さらに高度な使い方をする場合は、各プログラミング言語向けのAPIを利用してください。 APIのアドレスは次の通りです(詳しくは後述の各プログラミング言語の説明を参照)。
ドライバURI: ctip://cti.li/
RESTインターフェース: https://cti.li/api/
技術文書
ドライバおよびHTML→PDF変換についての全ての機能については、以下のドキュメントを参照してください。
Javaでの利用方法
ドライバの入手
以下のアドレスから最新版のドライバをダウンロードして下さい。
http://sourceforge.jp/projects/copper/releases/p8742
ドライバのアーカイブに含まれる、cti-driver-min-2.x.x.jar というファイルをコピーしてライブラリとしてリンクしてください。
cti-driver-2.x.x.jar は HTTPでの接続(http://cti.li/api/)を可能にするものですが、通常は上記の jar で十分です。
HTMLを変換する
以下は、HTMLをPDFに変換する簡単なプログラムです。
import java.io.File;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.URI;
import jp.cssj.cti2.CTIDriverManager;
import jp.cssj.cti2.CTISession;
import jp.cssj.cti2.helpers.CTIMessageHelper;
import jp.cssj.cti2.helpers.CTISessionHelper;
import jp.cssj.resolver.helpers.MetaSourceImpl;
public class Example1 {
/** 接続先。 */
private static final URI SERVER_URI = URI.create("ctip://cti.li/");
public static void main(String[] args) throws Exception {
// 接続する
CTISession session = CTIDriverManager.getSession(SERVER_URI, "", "");
try {
// result.pdfに結果を出力する
File file = new File("result.pdf");
CTISessionHelper.setResultFile(session, file);
// 出力先ストリームを取得
PrintWriter out = new PrintWriter(new OutputStreamWriter(
session.transcode(new MetaSourceImpl(URI.create("."),
"text/html")), "UTF-8"));
try {
// 文書を出力
out.println("<html>");
out.println("<head>");
System.out.println("<meta http-equiv='Content-Type' "+
"content='text/html; charset=UTF-8'>");
out.println("<link rel='StyleSheet' type='text/css' href='style.css'>");
out.println("<title>サンプル</title>");
out.println("</head>");
out.println("<body>");
out.println("<p>Hello World!</p>");
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
} finally {
// セッションを閉じる(忘れやすいので注意!)
session.close();
}
}
}
詳細なドキュメント
さらに詳細な使用方法は以下のドキュメントを参照してください。
PHPでの利用方法
ドライバの入手
以下のアドレスから最新版のドライバをダウンロードして下さい。
http://sourceforge.jp/projects/copper/releases/p8743
RedHat系またはDebian系のLinuxでroot権限を利用可能な場合は、.rpmまたは.debパッケージをインストールしてください。 この場合、システムの所定の場所にドライバがインストールされます。
それ以外の場合は、.zipまたは.tar.gzアーカイブをダウンロードし、 codeディレクトリの中身を適当な場所に置き、必要に応じてライブラリパスを設定してください。
HTMLを変換する
以下は、HTMLをPDFに変換する簡単なプログラムです。
<?php
require_once ('CTI/DriverManager.php'); // 環境に合わせて適切に設定してください
//セッションの開始
$session = cti_get_session('ctip://cti.li/');
//文書の送信
$session->start_main();
?>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<link rel='StyleSheet' type='text/css' href='style.css'>
<title>サンプル</title>
</head>
<body>
<p>Hello World!</p>
</body>
</html>
<?php
$session->end_main();
//セッションの終了
$session->close();
?>
詳細なドキュメント
さらに詳細な使用方法は以下のドキュメントを参照してください。
Perlでの利用方法
ドライバの入手
以下のアドレスから最新版のドライバをダウンロードして下さい。
http://sourceforge.jp/projects/copper/releases/p8741
RedHat系またはDebian系のLinuxでroot権限を利用可能な場合は、.rpmまたは.debパッケージをインストールしてください。 この場合、システムの所定の場所にドライバがインストールされます。
それ以外の場合は、.zipまたは.tar.gzアーカイブをダウンロードし、 codeディレクトリの中身を適当な場所に置き、必要に応じてライブラリパスを設定してください。
HTMLを変換する
以下は、HTMLをPDFに変換する簡単なプログラムです。
#!/usr/bin/perl use strict; use lib './code'; # 必要に応じてドライバのパスを設定する use CTI::DriverManager; # 接続 my $uri = 'ctip://cti.li/'; my $session = CTI::DriverManager::get_session($uri); # 出力の変換を開始 $session->start_main(*STDOUT, '.', mime_type => 'text/html'); # ここで出力したHTMLが変換されます print "<html>"; print "<head>"; print "<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>"; print "<title>サンプル</title>"; print "</head>"; print "<body>"; print "<p>Hello World!</p>"; print "</body>"; print "</html>"; # 出力の変換を終了 $session->end_main(*STDOUT); # 接続を閉じる $session->close();
詳細なドキュメント
さらに詳細な使用方法は以下のドキュメントを参照してください。
Rubyでの利用方法
ドライバの入手
以下のアドレスから最新版のドライバをダウンロードして下さい。
http://sourceforge.jp/projects/copper/releases/p13670
RedHat系またはDebian系のLinuxでroot権限を利用可能な場合は、.rpmまたは.debパッケージをインストールしてください。 この場合、システムの所定の場所にドライバがインストールされます。
それ以外の場合は、.zipまたは.tar.gzアーカイブをダウンロードし、 codeディレクトリの中身を適当な場所に置き、必要に応じてライブラリパスを設定してください。
HTMLを変換する
以下は、HTMLをPDFに変換する簡単なプログラムです。
require 'CTI'
include CTI
require 'erb'
# セッションの開始
get_session('ctip://cti.li/') do |session|
# テンプレートを変換
session.transcode do |out|
begin
$stdout = out
ERB.new(DATA.read).run
ensure
$stdout = STDOUT
end
end
end
__END__
<html>
<head>
<title>ERB</title>
</head>
<body>
<p>Hello ERB</p>
<p>ただいまの時刻は <%= Time.now %></p>
</body>
</html>
詳細なドキュメント
さらに詳細な使用方法は以下のドキュメントを参照してください。
Pythonでの利用方法
ドライバの入手
以下のアドレスから最新版のドライバをダウンロードして下さい。
http://sourceforge.jp/projects/copper/releases/p13732
RedHat系またはDebian系のLinuxでroot権限を利用可能な場合は、.rpmまたは.debパッケージをインストールしてください。 この場合、システムの所定の場所にドライバがインストールされます。
それ以外の場合は、.zipまたは.tar.gzアーカイブをダウンロードし、 codeディレクトリの中身を適当な場所に置き、必要に応じてライブラリパスを設定してください。
HTMLを変換する
以下は、HTMLをPDFに変換する簡単なプログラムです。
# -*- coding: utf-8 -*-
import sys
import os
import os.path
import time
from cti import *
# セッションの開始
session = get_session('ctip://cti.li/')
try:
# 文書の送信
sys.stdout = session.transcode()
try:
print """
<html>
<head>
<title>Python Test</title>
</head>
<body>
<h1>Hello Python</h1>
<p>只今の時刻は: %s</p>
</body>
</html>""" % time.strftime("%Y/%m/%d %H:%M:%S")
finally:
sys.stdout.close()
sys.stdout = sys.__stdout__
finally:
session.close()
詳細なドキュメント
さらに詳細な使用方法は以下のドキュメントを参照してください。
.NET(C# / VB.NET)での利用方法
ドライバの入手
以下のアドレスから最新版のドライバをダウンロードして下さい。
http://sourceforge.jp/projects/copper/releases/p12608
dllディレクトリ内にあるCTI.dllをプログラムにリンクしてください。
ウェブサイトを変換する
以下は、ウェブサイトをPDFに変換する簡単なプログラムです(C#)。
using System;
using Zamasoft.CTI;
namespace examples
{
/// <summary>
/// サーバー側からインターネット上の文書にアクセスして変換します。
/// </summary>
class ServerResource
{
static void Main(string[] args)
{
using (Session session = DriverManager.getSession(new Uri("ctip://cti.li/"), "", ""))
{
// test.pdfに結果を出力する
Utils.SetResultFile(session, "test.pdf");
// http://cti.li/以下にあるリソースへのアクセスを許可する
session.Property("input.include", "http://cti.li/**");
// ウェブページを変換
session.Transcode("http://cti.li/");
}
}
}
}
上記のプログラムのVB.NET版です。
Imports System
Imports System.IO
Imports Zamasoft.CTI
''' <summary>
''' サーバー側からインターネット上の文書にアクセスして変換します。
''' </summary>
Module ServerResource
Sub Main()
Using session As Session = DriverManager.getSession(New Uri("ctip://cti.li/"), "", "")
' test.pdfに結果を出力する
Utils.SetResultFile(session, "test.pdf")
' http://cti.li/以下にあるリソースへのアクセスを許可する
session.Property("input.include", "http://cti.li/**")
' ウェブページを変換
session.Transcode("http://cti.li/")
End Using
End Sub
End Module
詳細なドキュメント
さらに詳細な使用方法は以下のドキュメントを参照してください。
HTML / JavaScript での利用方法
最も簡単な方法
ブラウザのアドレスバーに以下のURLをコピー&ペーストしてください。
http://cti.li/api/transcode?rest.main=Hello+world%21
rest.mainパラメーターの内容がPDF化されます。
フォームから送った内容をPDF化する
同じことをフォームで行うことが出来ます。
<form action="http://api.cssj.jp:8095/transcode" method="post"> <textarea name="rest.main">Hello world!</textarea><br/> <button type="submit">変換</button> </form>