2

名前 (#box2) とトピック (#box1) を画像の上に中央に配置しようとしています。

<?php require_once('seminar_config.php'); ?>

<a href="print.certificate.php">Print</a>

<body>
<?php
$participants = $db->get_results("SELECT participant FROM tbl_participants WHERE state=1");
$topics = $db->get_results("SELECT topic FROM tbl_topics");
if(!empty($participants)){
?>
<?php ob_start(); ?>
<div id="container">
<img src="certificate.jpg"/>
<?php foreach($topics as $a=>$b){ ?>
<?php foreach($participants as $k=>$v){ ?>
    <img src="certificate.jpg"/>
    <div id="box1" class="common"><?php echo $b->topic; ?></div>
    <div id="box2" class="common"><?php echo $v->participant; ?></div>
<?php } ?>
<?php } ?>  
</div>
<?php $_SESSION['certificates'] = ob_get_contents(); ?>
<?php ob_flush(); ?>    
<?php } ?>
</body>

そして、pdfを作成するスクリプトは次のとおりです。

<?php require_once('html2pdf/html2pdf.class.php'); ?>
<?php
$html2pdf = new HTML2PDF('L', 'A4', 'en');
$html2pdf->writeHTML('<style>

    #box1{  
        margin-top: 350px;
    }

    #box2{  
        margin-top: 200px;
    }

    .common{
        height: 20px;
        left: 630px;
        right: 630px;
        text-align: center;
        position: absolute;
        left: 0;
        top: 0;
        font-size:20px;
    }
</style>'.

$_SESSION['certificates']);
$html2pdf->Output('random.pdf');
?>

html2pdf を使用して pdf ファイルを生成していない場合、名前とトピックの中央配置に問題はありません。しかし、html2pdf を使用すると、すべてが台無しになります。html2pdf を使用する場合は、css の中央に配置するのを手伝ってください。

4

5 に答える 5

2

ほとんどの一般的な HTML から PDF への変換プログラムは、CSS を理解していないか、CSS をほとんど理解していません。HTML は機能しているが、html2pdf を使用して PDF にうまく変換できない場合は、wkhtmltopdf を試すことができます https://github.com/antialize/wkhtmltopdf

于 2012-01-03T13:43:48.443 に答える
2

.common を中央に配置する場合は、次を試してください。

    .common{
       position: absolute;
       left: 50%;
       top: 0;
       font-size:20px;
       width:600px;
       margin-left:-300px;
    }
于 2012-01-03T13:44:21.503 に答える
2

古い質問ですが、今日も同様の問題がありました。これは、html と css の歴史の中で何かを中央に置くためにあらゆる方法を試した後、私がそれをどのように解決できたかです。JorisW のようなテーブルを使用しました。

<table style='width:100%' align='center'>
    <tr>
        <td>
            <img src="image.gif">
        </td>
    </tr>
</table>
于 2014-07-21T07:37:55.703 に答える
1

これが私がdivを中央に配置するために使用するものです。

id=testでdivを配置したいとします

CSS

#test {
   width: 500px;
   margin: 0 auto; //auto margin to left and right
}
于 2012-01-03T14:13:27.867 に答える
1

テーブルとインライン CSS スタイルを使用してみる

<table align="left" width="100%" style="page-break-after:always; margin-top:25px; margin-left:25px; font-family:tahoma; font-size:20px; ">
<tr><td>Your info</td></tr>
</table>
于 2012-01-03T14:09:48.237 に答える