1
我正在使用love2d 0.10.1。 Love2d返回字體文件無法加載的錯誤,因爲它不存在。但該文件位於子目錄中。我試圖給文件名的完整路徑,它不會工作。字體文件必須在另一個目錄中爲,因爲在最終的exe中不會包含該文件。Love2d無法在同一目錄中找到字體文件
我現在的目錄是這樣
--- love 2d
------ game
---------- main.lua
---------- fonts
-------------- segoeui.ttf
------ love.exe
,並期待這樣最終exe文件時作出
--- love 2d
------ fonts
---------- segoeui.ttf
------ game.exe
我的代碼(簡化)
love.window.setMode(500, 500) -- Open window
font = love.graphics.newFont('segoeui.ttf', 20) -- Load font
love.graphics.print(text, 100, 100) -- Print text
love.graphics.present() -- Display text
while true do end
錯誤消息
我發現有人說這是因爲愛無法訪問外最主要的一個文件夾,所以我想這個
love.window.setMode(500, 500) -- Open window
local file = io.open("fonts\\segoeui.ttf", "r")
local content = file:read "*a"
local data, err = love.filesystem.newFileData(content, 'segoeui.ttf')
font = love.graphics.newFont(data, 20) -- Load font
love.graphics.print("hey", 100, 100) -- Print text
love.graphics.present() -- Display text
while true do end
這樣io.open成功打開該文件,內容被讀取,然後轉換成FileData然後饋送給newFont。但是,這會返回字體無法加載的錯誤,因爲數據不正確。我想這不是加載它的方式。
哦,它現在的作品。但是沒有辦法直接從windows字體目錄(C:\ Windows \ Fonts)使用它們。如果不是,我必須複製20Mo的字體,這是相當多的。 –
此外,這似乎與每個love2d函數都是一樣的:不能在工作目錄之外使用文件 –
簡單的測試是將文件「filename.png」放在當前工作目錄的上方一個目錄中,然後查看是否「。 ./filename.png「可以被訪問。如果是這樣,那麼你知道你可以訪問當前工作目錄之外的文件。 – Cricket