このブログの記事の印刷用ページを作った
2009-07-15-3
[ThisSite][Programming]
このブログの個別記事ページですが、ブラウザによってはきれいに印刷できないことがありました。
そこで、内容部分以外は削除したミニマムHTMLを生成するプログラムを書き、それによりこのブログの記事の印刷用ページを作りました。
記事URL「http://chalow.net/2009-07-15-1.html」に対し「http://chalow.net/p/2009-07-15-1.html」というURLが印刷用ページです。
各記事ページにリンクを貼りました。
↓ ↓ ↓ ↓ ↓ ↓
↓ ↓ ↓ ↓ ↓ ↓
どうぞご利用ください。
よろしくお願いします。
§
印刷用ページの生成には「Webページを読み込んで何か処理して表示するラッパーCGIのテンプレート」[2008-11-04-2]を使っています。
「do something」の部分はこんな感じでぐちゃっと適当に:
そこで、内容部分以外は削除したミニマムHTMLを生成するプログラムを書き、それによりこのブログの記事の印刷用ページを作りました。
記事URL「http://chalow.net/2009-07-15-1.html」に対し「http://chalow.net/p/2009-07-15-1.html」というURLが印刷用ページです。
各記事ページにリンクを貼りました。
↓ ↓ ↓ ↓ ↓ ↓
↓ ↓ ↓ ↓ ↓ ↓
どうぞご利用ください。
よろしくお願いします。
§
印刷用ページの生成には「Webページを読み込んで何か処理して表示するラッパーCGIのテンプレート」[2008-11-04-2]を使っています。
「do something」の部分はこんな感じでぐちゃっと適当に:
# do something vvv $cont =~ s{<link rel="(stylesheet|alternate|start|next|prev)".+?>}{}smg; if ($cont =~ m{<body>(.+?)</body>}sm) { my $body = $1; $body =~ s{^.*<!-- start:[\d-]+ -->(.+?)<!-- end:[\d-]+ -->.*$}{$1}sm; $body =~ s{<h2>}{<h2>たつをの ChangeLog<br>}; $body =~ s{<a href="http://b.hatena.ne.jp/entry.+?(<!-- /sbm_area -->)}{$1}sm; $cont =~ s{<body>(.+?)</body>}{<body>$body</body>}sm; $cont =~ s{</head>}{<style> table {border-collapse: collapse;} td,th {border: solid 1px gray; padding: 3px;} </style></head>}; } # do something ^^^
この記事に言及しているこのブログ内の記事