2024年1月の学習内容
1月中の業務で学習した内容です。
- datatablesをGraphQL結果から制御
- PythonでPDF出力ライブラリを使用
- PHPからPDF出力を行う
- PHPからExcel操作を行う
①datatablesをGraphQL結果から制御
去年からdatatables一覧ページを作成しており、GraphQLでdatatablesの設定項目を持つデータを取得しその設定項目によって、datatables内容を制御する内容です。
作業していて、表示件数の上限変更についてGraphQLの設定項目で変更するのだろうと思っていたのですが、変える事が出来ず調べた結果、対象の子サイトのテーマで件数上限の変更を行う必要がある事が分かりました。
②PythonでPDF出力ライブラリを使用
試した(試そうとした)ライブラリは下記のとおりです。
PyPDF
AsposeWords
Pdfkit
Xhtml2Pdf
それぞれ、文字化けしたり有償のものだったりでPdfkitは出力に成功したのですがどうも1ページに収まらずリファレンスを探したのですが、1ページにまとめる事は難しかったです。INPUTのHTML自体を変える事によって出来たのかもしれないですが、汎用性を考えるとどちらにせよPdfkitの使用は断念しました。
③PHPからPDF出力を行う
②を試した結果PHPからPDF出力を行う方向性へシフトしました。
試したライブラリは下記のとおりです。
Browsershot
Laravel Excel
LibreOffice Converter
simple-excel
fast-excel
phpspreadsheet
弊社で使用しているサーバーがレンタルサーバーであり、これらのライブラリを導入しても管理権限のある箇所を触る事が出来ずほとんど断念しました。
最終的には、fast-excel、phpspreadsheetを組み合わせるもしくはphpspreadsheetを単体でVPSから実行させる方法に行きつきました。
また、学習した点としては、BrowsershotとLaravelに関してフォントファイルをダウンロードし、それを各ライブラリフォルダ内で認識させる必要があるためttf、otfファイルの存在、認識するファイル形式もttfしか認識されないケースもあり、otfからttfに変換させる必要があるなどがありました。
④PHPからExcel操作を行う
phpspreadsheetで値の読み書き、フォントの変更、太字、背景色変更などを行いました。
phpspreadsheetに関しては以前触った事があり、大体の操作は同じでしたが、
太字や背景色変更など触れていない箇所があったのでそこを学びました。
「東三河・西三河で働く!」高時給な派遣求人が満載!
-
前の記事
【色彩心理学】色が与える心理的効果とは 2024.01.31
-
次の記事
【PHP】繰り返し処理中(foreach)にて配列の最初と最後だけに処理をしたい時は? 2024.02.02