スマホアプリでpdfをダウンロードさせたくて四苦八苦したのでメモとして残します。
結論から言うと出来ませんでした。
Print関数で印刷する。
ブラウザの機能で印刷を呼び出しているだけのようなのでスマホだと機能しません(残念
QRコードの作成自体は、サービスを使います。
https://goqr.me/api/
Power Automateを使いPDFを作成する
onedrive for businessのコネクタにファイルを変換するというものがあります。
htmlからjpgやpdfに変換したりできるみたいです。
ただ、そのままhtmlデータからpdfに変換しようとした際に、日本語が入っているとエラーが出て変換出来ないようでした...
(英語のみだとそのまま変換される)
なので一度jpgに変換してからjpgをワードに埋め込んでワードをpdfに変換するという方法が紹介されていたので試そうとしましたが、ワードが有料コネクタだったので使えませんでした。
(エクセルは無料でできるのに...)
あとhtmlをjpgに変換するとサイズが大きければ縮小されるようですので汎用的な使い方は出来ないと思います。
※参考
https://stackoverflow.com/questions/56990210/how-to-print-bar-code-from-microsoft-powerapp
TCPDFを使ってPDFを作成する。(解決)
ダウンロード自体はappsの関数にdownload関数があってそれを使えばできそうなのですが、sslのサイトではないとdownload関数が使えないようです。
ただ、Automateを使ってonedriveに一度保存してからonedriveのurlをdownload関数に渡せばそのままダウンロードできると思ったのですが、apps側で一度でも共有リンクを開いていないとオリジナルのファイルはダウンロードできないようです。
なので諦めて、Launch関数という指定のurlをブラウザで開く関数でonedriveの共有リンクを開く形にしました。
(スマートではないですが...)
その他
base64にファイルを変換してダウンロードさせる等も考えましたが、変換まではAutomateのonedriveファイルコンテンツの取得で変換出来ますが、ダウンロードが出来ませんでした。
pdfviewerコントロールではbase64を使ってPDFの表示はできるみたいです。