この質問に正しく言い方をする方法が正確にわからないので、私は試してみます:Mediawikiの低解像度SVGから高解像度のサムネイルを取得するには?
this pageのラスタライズされたSVGを参照してください。かなりひずんでいるように見えます。そして、私の言い訳は、むしろ***です。今度はそれをhereと比較しましょう。どちらも同じSVGファイルを持ち、ソースコードはwikitextで同一です。違いは、ラスタライズされた「サムネイル」がどのように生成されるかにあります。
私はMediaWikiのから取得した結果。
意図した結果。
ウィキペディアとウィキアの両方が、SVG用にいくつかのラスタライズされたサムネイルを作成するか、単にページのサイズに応じて必要に応じて生成するだけです。しかし、MediaWikiはデフォルトでは1つのサムネイルしか生成しません。これは、元のSVGと同じ解像度を持つことを暗示しています。小さなSVGを大きな画像にラスタライズすると、ぼやけてしまいます。
サムネイル/ラスタライズする前に、SVGのスケーリング/サイズ変更が行われていないか、またはそうでなければなりません。
$wgFileExtensions = array('png', 'gif', 'jpg', 'jpeg',
'xls', 'mpp', 'pdf', 'ppt', 'tiff', 'ogg', 'svg',
'woff', 'eot', 'woff2'
);
// $wgSVGConverters['ImageMagick'] = '"' . $wgImageMagickConvertCommand . '" -background white -thumbnail $widthx$height^! $input PNG:$output';
// $wgSVGConverters['ImageMagick'] = '$path/convert -density $width -geometry $width $input PNG:$output';
$wgSVGConverters['ImageMagick'] = '$path/convert -density 1200 -background none -geometry $width $input PNG:$output';
$wgSVGConverters['rsvg'] = '/usr/bin/rsvg-convert -w $width -h $height $input -o $output';
$wgSVGConverter = 'ImageMagick';
// $wgSVGConverter = 'rsvg';
$wgSVGMaxSize = 2048;
$wgMaxImageArea = 1.25e7;
$wgMaxAnimatedGifArea = 1.0e6;
$wgUseImageResize = true;
$wgGenerateThumbnailOnParse = true;
そう...それらの欠如が問題の原因であるならばどのように私は、複数のサムネイルを持つ有効にする:ちょうどヘッドアップのための
、ここでいくつかは私のLocalSettings.phpから来るのか?これは問題の原因でもありますか?そうでない場合、意図した結果が得られない本当の理由は何ですか?私に何ができる?
編集: ImageMagickからRSVGに切り替えて既に解決済みです。
はい、私はそれを理解しました。私が所有していないサーバーは、Wikiの部分には書き込み権と読み取り権を持ちますが、root特権はありません.Gentoo Linuxを持っていて、密度を無視した古いバージョンのImagickを持っているようです。したがって、私のための唯一の解決策は、RSVGに切り替えることでした(幸いにも、サーバーにもそれがインストールされています)。 –