我想在gtk3 c代码中按下按钮时显示PDF文件。事实上,我想在帮助中插入用户手册按钮,当按下按钮时,PDF文件显示:
我插入按钮(图中显示)但我无法编写用户手册功能的代码来显示PDF文件。
我使用“poppler”并包含
#include <C:\Users\Alireza\Desktop\poppler-0.18.4\poppler-0.18.4\glib/poppler.h>
到我的代码中。
我的功能是
void UserManual(GtkWidget *widget, gpointer data)
{
GtkWidget* win;
GError* err = NULL;
doc = poppler_document_new_from_file("C:/Program Files (x86)/Sepand64bit/logo/UserManual.pdf", NULL, &err);
if (!doc) {
printf("%s\n", err->message);
g_object_unref(err);
//return 2;
}
page = poppler_document_get_page(doc, 0);
if (!page) {
printf("Could not open first page of document\n");
g_object_unref(doc);
//return 3;
}
int pages = poppler_document_get_n_pages(doc);
printf("There are %d pages in this pdf.\n", pages);
}
但我有错误:
*错误LNK2001:未解析的外部符号poppler_document_get_page
*错误LNK2001:未解析的外部符号poppler_document_new_from_file
*错误LNK2001:未解析的外部符号poppler_document_get_n_pages
我认为poppler错误地对我的代码进行了调查。你会建议如何解决这个任务的想法?或者我可以在互联网上的哪些资源上找到帮助?
答案 0 :(得分:0)
如果您不需要使用Poppler在您的应用程序中显示PDF,那么我建议采用更简单的方法(尽管可以减少对结果的控制)并使用
gtk_show_uri(gdk_screen_get_default(), "file:///path/to/UserManual.pdf",
GDK_CURRENT_TIME, &error);
无论PDF文件的默认查看器是什么,它都会打开PDF。