phpexcel によって Excel にエクスポートされた色が、Web ページに表示される色と一致しない_PHP チュートリアル
phpexcel でエクスポートされた色に関するいくつかの問題について、phpexcel を使用してエクスポートされた Excel の色が Web ページに表示される色と一致しないのはなぜですか?何が起こっているのか知りたいですか?どうやって解決すればいいのでしょうか? PHP コードの詳細は次のとおりです:
PHP コード:
require_once './PHPExcel.php';
require_once './Excel5.php';
require_once './get_excel_row.php';
「../include/base.php」が必要;
「../include/function/006/creatExcelDb.php」が必要;
define("COLOR1","#96B7F6");
//查处理データ===++++++++++++++++++++++++++++++++++++++++ ++++
$q = $db->query("select * from oa_event_sales");
while($a = $db->fetch_array($q)){
$list[] = $a;
}
$ce = 新しいcreatExcelDb();
$re = $ce->_run($list,'served_time','client_status','oid');
$all_nums=0;
$num=配列();
foreach($re as $k=>$v){
$num[$k]=count($re[$k]);
$all_nums+=count($re[$k]);
}
$jq = array();
$title1 = クライアントステータス;
$title2 = fin_confirm;
$title3 = オイド;
//去除数組中同然の值
foreach($re as $key => $val){
if(true){
foreach($val as $key2 => $val2){
if(!in_array ($key2,$jq)){
$jq[] = $key2;
}
}
}
}
$arr_keys=array();
foreach($re as $k=>$v){
foreach($v as $k2=>$v2){
$arr_keys[]=$k2;
}
}
$c=array_count_values($arr_keys);
//++===++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++
// 创建一处理对オブジェクト例
$objExcel = new PHPExcel();
// 创建文件格式書入对オブジェクト实例、コメント解除
$objWriter = new PHPExcel_Writer_Excel5($objExcel);
//設定文档基本プロパティ/**一般的には使われないようです**/
$objProps = $objExcel->getProperties();
$objProps->setCreator("杨本木");
$objProps->setLastModifiedBy("杨本木");
$objProps->setTitle("杨本木");
$objProps->setSubject("杨本木");
$objProps->setDescription("杨本木");
$objProps->setKeywords("杨本木");
$objProps->setCategory("杨本木");
//****************************************
//後続のコンテンツ操作のために現在のシート インデックスを設定します。
//通常、表示呼び出しは複数のシートを使用する場合にのみ必要です。
//デフォルトでは、PHPExcel は SheetIndex=0 で最初のシートを自動的に作成します set
$objExcel->setActiveSheetIndex(0);
$objActSheet = $objExcel->getActiveSheet();
//現在の名前を設定しますアクティブシートの
$objActSheet->setTitle('currentsheetname');
//EXCELの幅とは少し違う値です。 EXCEL の幅
//$objActSheet- >getColumnDimension('A')->setWidth(20);
//$objActSheet->getRowDimension(1)->setRowHeight(30); //Height
/ /セルの値を設定
$objActSheet ->setCellValue('A1', 'タイトル合計表示');
/*
//スタイルを設定
$objStyleA1 = $objActSheet->getStyle('A1'); $ objstylea1-> gt; sethorizontal(phpexcel_style_alignment :: horizontal_centa1 = $ objstylea1-> >setSize(18);
$ob jFontA1 ->setBold(true);
//列の中央揃えを設定します
$objActSheet->getStyle('D')->getAlignment()->set水平(PHPExcel_Style_Alignment) ::HORIZONTAL_CENTER);*/
//============最初======================== ===========
$ベンム=1;
$objActSheet->setCellValue('A1', '行标签列标签');
foreach($jq as $k=>$v){
$objActSheet->setCellValue(get_excel_row($benmu).'1', $v);
$ベンム+=1;
}
$objActSheet->setCellValue(get_excel_row($benmu).'1', '总计');
//設定
for($i=0;$i$objActSheet->getColumnDimension(get_excel_row($i))->setWidth(20);
//宽度
$objActSheet->getStyle(get_excel_row($i)."1")->getAlignment()->sethorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objActSheet->getStyle(get_excel_row($i))->getAlignment()->sethorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//颜色
$objActSheet->getStyle(get_excel_row($i)."1")->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objActSheet->getStyle(get_excel_row($i)."1")->getFill()->getStartColor()->setARGB(COLOR1);
}
//==============内容=================
$y=2;
foreach($re as $k1=>$v1){ //$k1 全部放出 A2。。。。後、k1 は電話番号、v1 は人》番号です
$objActSheet->setCellValue('A'.$y, $k1);
//Color
$objActSheet->getStyle('A'. $y )->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objActSheet->getStyle('A'.$y)->getFill()->getStartColor()-> setARGB( COLOR1);
foreach($jq as $k2=>$v2){ //k2 は 0、v2 は人
foreach($v1 as $k3=>$v3){ //$k3 は人,$ v3 は目的の値です
if($k3==$v2){
//$objActSheet->setCellValue(get_excel_row("1"+$k2).$y,$v1[$k3]); $objActSheet ->setCellValueExplicit(get_excel_row("1"+$k2).$y,$v1[$k3],PHPExcel_Cell_DataType::TYPE_STRING);
}
}
}
$objActSheet->setCellValue(get_excel_row(") 1" +count($jq)).$y, $num[$k1]);
$y+=1;
}
//=================last == ========
$objActSheet->setCellValue("A".$y,"Total");
//Color
$objActSheet->getStyle("A".$y)- >getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objActSheet->getStyle("A".$y)->getFill()->getStartColor()->setARGB(COLOR1) ;
foreach($jq as $k=>$v){ //k は人です
$objActSheet->setCellValue(get_excel_row("1"+$k).$y,$c[$v]);
/ /Color
$objActSheet->getStyle(get_excel_row("1"+$k).$y)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objActSheet->getStyle( get_excel_row( "1"+$k).$y)->getFill()->getStartColor()->setARGB(COLOR1)
}
$objActSheet->setCellValue(get_excel_row("1"+count) ($ jq)).$y,$all_nums);
//Color
$objActSheet->getStyle(get_excel_row("1"+count($jq)).$y)->getFill()-> setFillType( PHPExcel_Style_Fill::FILL_SOLID);
$objActSheet->getStyle(get_excel_row("1"+count($jq)).$y)->getFill()->getStartColor()->setARGB(COLOR1) );
//==============================
//出力コンテンツ
$outputFileName =time()。 ".xls ";
header("Pragma: public");
header("Cache-Control:must-revalidate、post-check=0、pre-check=0"); ;
header ("Content-Type:application/force-download");
header("Content-Type:application/download"); header('Content-Disposition:attachment;filename='.$outputFileName.'');
header("Content-Transfer-Encoding:binary");
$objWriter->save('php://output') ;
?>
上記のコードでは、エクスポートされた Excel では色が正しく表示されません。理由は何ですか?なぜでしょうか?
まず、次のように赤色を定義して、何が表示されるかを確認します。ページに表示されている色ではないので、とてもわかりにくいです。 。 。 。 。
このコードを見てください: $objActSheet->getStyle('A'.$y)->getFill()->getStartColor()->setARGB(COLOR1);
http://www.bkjia.com/PHPjc/326231.html
www.bkjia.com

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











印刷が必要なファイルを開いたときに、印刷プレビューで表の枠線が何らかの原因で消えてしまった場合は、早めに対処する必要があります。 file このような質問がある場合は、エディターに参加して次のコースを学習してください: Excel で表を印刷するときに枠線が消えた場合はどうすればよいですか? 1. 次の図に示すように、印刷する必要があるファイルを開きます。 2. 以下の図に示すように、必要なコンテンツ領域をすべて選択します。 3. 以下の図に示すように、マウスを右クリックして「セルの書式設定」オプションを選択します。 4. 以下の図に示すように、ウィンドウの上部にある「境界線」オプションをクリックします。 5. 下図に示すように、左側の線種で細い実線パターンを選択します。 6.「外枠」を選択します

Excelは日々の事務作業でデータ処理に使用されることが多く、「フィルター」機能を使用することが多いです。 Excel で「フィルタリング」を実行する場合、同じ列に対して最大 2 つの条件しかフィルタリングできません。では、Excel で同時に 3 つ以上のキーワードをフィルタリングする方法をご存知ですか?次に、それをデモンストレーションしてみましょう。 1 つ目の方法は、フィルターに条件を徐々に追加することです。条件を満たす 3 つの詳細を同時にフィルターで除外する場合は、まずそのうちの 1 つを段階的にフィルターで除外する必要があります。最初に、条件に基づいて姓が「Wang」の従業員をフィルタリングできます。 [OK]をクリックし、フィルター結果の[現在の選択をフィルターに追加]にチェックを入れます。手順は以下の通りです。同様に再度個別にフィルタリングを行う

私たちは日々の仕事や勉強で、他人からExcelファイルをコピーし、そのファイルを開いて内容を追加したり、再編集したりして保存することがありますが、互換性チェックのダイアログボックスが表示されることがあり、非常に面倒です。ソフトウェア. 、通常モードに変更できますか?そこで以下では、エディターがこの問題を解決するための詳細な手順を紹介します。一緒に学びましょう。最後に、忘れずに保存してください。 1. 図に示すように、ワークシートを開き、ワークシートの名前に追加の互換モードを表示します。 2. このワークシートでは、内容を変更して保存すると、図のように互換性チェックのダイアログが必ず表示され、非常に面倒です。 3. [Office] ボタンをクリックし、[名前を付けて保存] をクリックして、

データを処理していると、倍数や温度などのさまざまな記号が含まれるデータに遭遇することがあります。 Excel で上付き文字を設定する方法をご存知ですか? Excel を使用してデータを処理する場合、上付き文字を設定しないと、大量のデータを入力するのがさらに面倒になります。今回はエクセルの上付き文字の具体的な設定方法をエディターがお届けします。 1. まず、図に示すように、デスクトップで Microsoft Office Excel ドキュメントを開き、上付き文字に変更する必要があるテキストを選択します。 2. 次に、図に示すように、右クリックして、クリック後に表示されるメニューで「セルの書式設定」オプションを選択します。 3. 次に、自動的に表示される「セルの書式設定」ダイアログボックスで

ほとんどのユーザーは Excel を使用してテーブル データを処理します。実は Excel にも VBA プログラムがあります。専門家を除けば、この関数を使用したユーザーはあまり多くありません。VBA で記述するときによく使用されるのが iif 関数です。実際には、次の場合と同じです。関数の機能は似ていますが、iif関数の使い方を紹介します。 SQL ステートメントには iif 関数があり、Excel には VBA コードがあります。 iif 関数は Excel ワークシートの IF 関数と似ており、論理的に計算された真値と偽値に基づいて真偽値を判定し、異なる結果を返します。 IF 関数の使用法は (条件、はい、いいえ) です。 VBAのIF文とIIF関数、前者のIF文は条件に応じて異なる文を実行できる制御文であり、後者は条件に応じて異なる文を実行できる制御文です。

ソーシャルメディアの台頭が続く中、Douyinは人気のショートビデオプラットフォームとして多くのユーザーを魅了しています。 Douyin では、ユーザーは自分の生活を公開するだけでなく、他のユーザーと交流することもできます。このインタラクションにおいて、絵文字は徐々にユーザーが感情を表現する重要な手段になってきました。 1. WeChat で Douyin プライベート メッセージ絵文字を取得するにはどうすればよいですか?まず、Douyin プラットフォームでプライベート メッセージ絵文字を取得するには、Douyin アカウントにログインし、気に入った絵文字を参照して選択する必要があります。友達に送信するか、自分で収集するかを選択できます。 Douyin で絵文字パッケージを受信した後、プライベート メッセージ インターフェイスで絵文字パッケージを長押しし、「絵文字に追加」機能を選択できます。このようにして、この顔文字パッケージをDouyinの顔文字ライブラリに追加できます。 3. 次に、Douyin 顔文字ライブラリに単語を追加する必要があります

ソフトウェアの学習では、Excel が便利なだけでなく、実際の作業で必要なさまざまな形式に対応できるため、Excel の使用に慣れています。Excel は非常に柔軟に使用でき、今日は「みんなのために:Excelの読み取りモードを設定する場所」を持ってきました。 1. コンピュータの電源を入れ、Excel アプリケーションを開き、目的のデータを見つけます。 2. Excel で読み取りモードを設定するには 2 つの方法があります。 1 つ目: Excel には、Excel レイアウトで多数の便利な処理メソッドが配布されています。 Excelの右下に読み取りモードを設定するショートカットがあります。バツマークのパターンを見つけてクリックすると、読み取りモードに入ります。バツマークの右側に小さな立体マークがあります。 。

1. PPT を開き、Excel アイコンを挿入する必要があるページに移動します。 「挿入」タブをクリックします。 2. [オブジェクト]をクリックします。 3. 次のダイアログボックスが表示されます。 4. [ファイルから作成]をクリックし、[参照]をクリックします。 5. 挿入する Excel テーブルを選択します。 6. [OK] をクリックすると、次のページが表示されます。 7. [アイコンで表示]にチェックを入れます。 8. 「OK」をクリックします。
