Qt で HTML テーブルを作成します。
QString css;
css = "<style type=\"text/css\">";
css += "table.tbl {border-width: 1px;border-style: solid;border-color: black;margin-top: 0px;margin-bottom: 0px;color: black;}";
css += "table.tbl td {padding: 3px;}";
css += "table.tbl th {padding: 3px;}";
css+="</style>";
QString text;
text="<table width=\"100%\" cellspacing=\"0\" class=\"tbl\">";
text+=("<tr><th>1</th><th colspan=\"2\">2</th><th>3</th><th></th></tr>");
text+=("<tr><td>1</td><td>2</td><td>3</td></tr>");
text+=("<tr><td colspan=\"2\">4</td><td>5</td><td>6</td></tr>");
text+=("<tr><td>7</td><td>8</td><td>9</td></tr>");
text+=("<tr><td>7</td><td>8</td><td>9</td></tr>");
text+=("<tr><td>7</td><td>8</td><td>9</td><td>8</td><td>9</td></tr>");
text+=("<tr><td>7</td><td>8</td><td>9</td></tr>");
text+=("<tr><td>7</td><td>8</td><td>9</td></tr>");
text+=("<tr><td>10</td><td>11</td><td>12</td></tr></table>");
そして、私はpdf文書として印刷しました:
QPrinter printer;
printer.setOrientation(QPrinter::Landscape);
printer.setPageMargins(10,10,10,50,QPrinter::Millimeter);
QTextDocument *document=new QTextDocument();
document->setHtml(css+text);
QPrintDialog *dlg = new QPrintDialog(&printer, this);
if (dlg->exec() != QDialog::Accepted)
return;
document->print(&printer);
私のテーブルには単一の境界線がありますが、3 列目と 4 列目の間に二重線がありますか? どうすればそれを取り除くことができますか?私の評判のためにイメージタグを使用することはできませんが、私のテーブルのイメージはここにあります: http://imgur.com/KW3pZEf
下手な英語でごめんなさい。