有人能告诉我我做错了什么吗?我在TCPDF生成的pdf中需要Arial字体.首先我尝试使用它:1)我从Windows字体caltalog获得Arial并将其放在TCPDF目录中.2)接下来我用脚本写了:
$fontname = $pdf->addTTFfont('../lib/tcpdf/arial.ttf', '', '', 32);
Run Code Online (Sandbox Code Playgroud)
之后在tcpdf/fonts中出现3个文件(arial.ctg.z,arial.php和arial.z).我认为一切都还可以但是如果在TCPDF中我使用这个字体:
$pdf->SetFont('arial', '', 16);
Run Code Online (Sandbox Code Playgroud)
文档中的字体确实是arial但没有特定的波兰语(??????)
我也试过自己准备字体:我下载了ttf2afm和makefontuni.php脚本,然后在命令行中我写了这个:
ttf2ufm -a arial.ttf
php -q makefontuni.php arial.ttf arial.ufm
Run Code Online (Sandbox Code Playgroud)
该命令还给了我3个文件(arial.ctg.z,arial.php和arial.z),但最终情况和以前一样.
我承认写入pdf的所有数据都是UTF-8,TCPDF结构是这样的:
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'utf-8', false);
Run Code Online (Sandbox Code Playgroud)
我不知道我做错了什么.:(
我想知道什么是解决以下问题的正确方法.
我有两个型号:
Publisher and Issue. Publisher has_many issues.
Run Code Online (Sandbox Code Playgroud)
我想管理发布者列表和问题列表中的问题.
例如 :
在发布者列表用户可以单击每个发布者附近的"问题"链接.然后他进入问题列表,但只过滤适当的发布者.他可以点击"创建新问题"并转到表单添加新问题.在此表单上,我不需要向他显示选择发布者的选择列表
在问题列表中,用户可以单击"创建新问题"并转到表单,但这次他应该从select中选择发布者,这与创建的问题有关.
简单地说,我需要单独的问题和出版商问题的crud行动.
首先我尝试制作一个:
resources :issues
resources :publishers do
resources :issues
end
Run Code Online (Sandbox Code Playgroud)
并在问题控制器:
before_filter :find_issue
def find_issue
@publisher = Publisher.find(params[:publisher_id]) if params[:publisher_id]
@issues = @publisher ? @publisher.issues : Issue
end
Run Code Online (Sandbox Code Playgroud)
但我必须在我的观点和控制器中做出很多条件.
例如,如果问题是从发布者创建的,则成功时我想重定向publisher_issues_path而不是issue_path反之亦然.与"返回列表"等类似的所有链接都存在同样的问题.所以代码在我看来不是很透明.
现在我想知道使用命名空间.
namespace :publishers, do
resources :issues
end
Run Code Online (Sandbox Code Playgroud)
和做
# app/controllers/publishers/issues_controller.rb
module Publishers
class IssuesController < ApplicationController
# actions that expect a :publisher_id param
end
end
# app/controllers/issues_controller.rb
class IssuesController < ApplicationController
# your …Run Code Online (Sandbox Code Playgroud)